Tehnica doi pointeri folosește doi indici care se mișcă printr-o secvență pentru a rezolva probleme într-o singură trecere — transformând multe soluții O(n²) de forță brută în O(n).
Ideea
Pastrați doi pointeri (adesea la capete, sau uno lent și unu rapid) și mutați-i pe baza unei condiții, restrângând munca fără rescannare.
Exemplu: perechi care se sumează la o țintă într-un tablou sortat
():
lo, hi = , (arr) -
lo < hi:
s = arr[lo] + arr[hi]
s == target:
(lo, hi)
s < target:
lo +=
:
hi -=
two_sum_sorted([, , , , ], )
