La detección de ciclos de Floyd encuentra un bucle en una secuencia (como una lista enlazada) usando dos punteros que se mueven a diferentes velocidades. Si existe un ciclo, el puntero rápido eventualmente alcanza y se encuentra con el puntero lento. Usa O(1) espacio extra.
La idea
Mueve un puntero slow un paso y un puntero fast dos pasos. En un ciclo, la brecha se reduce en uno en cada paso, por lo que deben colisionar; sin un ciclo, el puntero rápido llega al final.
