DSA Crash Course
Templates

Template: 1. TWO POINTERS — Opposite Direction

Mark when done:

1. TWO POINTERS — Opposite Direction

# =============================================================================
# Use when: sorted array + find pair, palindrome check, container problems
def two_pointers_opposite(arr, target):
    left, right = 0, len(arr) - 1
    while left < right:
        current = arr[left] + arr[right]
        if current == target:
            return [left, right]
        elif current < target:
            left += 1
        else:
            right -= 1
    return []


# =============================================================================