Solution: Circular Array Loop
Let's solve the Circular Array Loop problem using the Fast and Slow Pointers pattern.
We'll cover the following...
Statement
There is a circular list of non-zero integers called nums. Each number in the list tells you how many steps to move forward or backward from your current position:
- If - nums[i]is positive, move- nums[i]steps forward.
- If - nums[i]is negative, move- nums[i]steps backward.
As the list is circular:
- Moving forward from the last element takes you back to the first element. 
- Moving backward from the first element takes you to the last element. 
A cycle in this list means:
- You keep moving according to the numbers, and you end up repeating a sequence of indexes. 
- All numbers in the cycle have the same sign (either all positive or all negative). 
- The cycle length is greater than 1 (it involves at least two indexes). 
Return true if such a cycle exists in the list or false otherwise.
Constraints:
-  nums.length
-  nums[i]