La technique des deux pointeurs utilise deux indices qui se déplacent dans une séquence pour résoudre des problèmes en un seul passage — transformant de nombreuses solutions par force brute O(n²) en O(n).
L'idée
Gardez deux pointeurs (souvent aux extrémités, ou un lent et un rapide) et déplacez-les en fonction d'une condition, réduisant le travail sans rescanner.
Exemple : trouver une paire qui somme à une cible dans un tableau trié
():
lo, hi = , (arr) -
lo < hi:
s = arr[lo] + arr[hi]
s == target:
(lo, hi)
s < target:
lo +=
:
hi -=
two_sum_sorted([, , , , ], )
