La détection de cycle de Floyd trouve une boucle dans une séquence (comme une liste chaînée) en utilisant deux pointeurs se déplaçant à des vitesses différentes. Si un cycle existe, le pointeur rapide finit par rattraper et rencontre le pointeur lent. Elle utilise O(1) d'espace supplémentaire.
L'idée
Déplacez un pointeur slow d'une étape et un pointeur fast de deux étapes. Dans un cycle, l'écart diminue d'un à chaque étape, ils doivent donc entrer en collision ; sans cycle, fast atteint la fin.
