அல்கோரிதம்basics

Two Pointers — மாணவர்களுக்கு அடிப்படை

TT
Testlaa Team
May 14, 20261 min read

இரண்டு indices (left/right) வைத்து ஒப்பிட்டு நகர்த்துவது two pointers. பல O(n) தீர்வுகள் unnecessary backward move இல்லாமல் வரும்.

Try this in Python

def pair_sum_sorted(nums: list[int], target: int) -> tuple[int, int] | None:
    lo, hi = 0, len(nums) - 1
    while lo < hi:
        s = nums[lo] + nums[hi]
        if s == target:
            return lo, hi
        if s < target:
            lo += 1
        else:
            hi -= 1
    return None


print(pair_sum_sorted([1, 2, 4, 6, 10], 8))

Key takeaways

  • Sorted array + pair sum — தொடக்க pattern.
  • Pointers ஒருவரையொருவர் நோக்கி நகரும்.
  • ஒவ்வொரு step-ல் impossible பாதி நீக்கம்.

Tags:

Two pointersPythonமாணவர்கள்