Fast & Slow (Cycle Detection)Two Pointers

The Fast & Slow (Cycle Detection) pattern applies when you need the Fast & Slow (Cycle Detection) technique within the Two Pointers pattern. Its time complexity is O(n) and space complexity O(1). It is used in 4 problems on Thita, including Find the Duplicate Number, Happy Number and Is Subsequence. Common variations are String Comparison with Backspaces and String Reversal.

Master Floyd's tortoise and hare algorithm for cycle detection. Detect cycles in linked lists and find duplicate numbers.

Fast & Slow (Cycle Detection) is one of the 7 subpatterns of the Two Pointers pattern, which covers fast-slow, converging, expanding from center, and in-place modification techniques. The whole pattern is about 3 hours of study. This subpattern is a core technique: expect it to come up directly in interviews.

What Fast & Slow (Cycle Detection) covers

Master the two pointers technique including fast-slow pointers, converging pointers, and expanding from center. Essential for array, string, and linked list problems in coding interviews. Problems in this subpattern are usually searched for as floyd cycle detection, fast slow pointers, tortoise hare, linked list cycle, find duplicate, leetcode 141.

How to practise Fast & Slow (Cycle Detection) on Thita.ai

Read the theory for Fast & Slow (Cycle Detection), then work the problems attached to it in the browser editor. Your solution runs against the problem's test cases, and the AI coach offers a hint about the technique you are missing rather than a finished solution. Progress is tracked per subpattern, so the Two Pointers tracker shows this one as covered once you have solved its problems.

Other subpatterns in Two Pointers

Related DSA patterns

Where to go next

Fast & Slow (Cycle Detection) is one lesson in a 16-pattern DSA course. If you are preparing end to end, work the interview-critical patterns first and use the pattern sheet as the checklist; if you are here for one technique, the Two Pointers guide is the shortest path back to the rest of it.

Preparing this lesson and its course outline.