- Trending Categories
- Data Structure
- Operating System
- C Programming
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Floyd Cycle Detection Algorithm to detect the cycle in a linear Data Structure
Floyd Cycle is one of the cycle detection algorithms to detect the cycle in a given singly linked list.
In the Floyd Cycle algorithm, we have two pointers that initially point at the head. In Hare and Tortoise’s story, Hare moves twice as fast as Tortoise, and whenever the hare reaches the end of the path, the tortoise reaches the middle of the path.
Initialize Hare and Tortoise at the head node of the List.
Initially, the hare moves twice as fast as the tortoise.
Move the hare and tortoise both and find if the hare reaches the end of the Linked List, return as there is no loop in the list.
Otherwise, both Hare and Tortoise will go forward.
If Hare and Tortoise are at the same Node, then return since we have found the list cycle.
Else, start with step 2.
Pseudocode for the above algorithm
tortoise := headNode hare := headNode foreach: if hare == end return 'There is No Loop Found.' hare := hare.next if hare == end return 'No Loop Found' hare = hare.next tortoise = tortoise.next if hare == tortoise return 'Cycle Detected'
- Detect Cycle in a Directed Graph
- Detect Cycle in a an Undirected Graph
- Python Program to Detect the Cycle in a Linked List
- Python Program for Detect Cycle in a Directed Graph
- Gross Operating Cycle Vs Net Operating Cycle
- Cycle Sort
- Hamiltonian Cycle
- Floyd Warshall Algorithm
- Life Cycle Phases of Data Analytics
- Database Life Cycle
- Linear Probing in Data Structure
- Explain the Difference Between Linear and Non-linear Data Structure
- ERP Implementation Life Cycle
- What is a Working Capital Cycle?