투포인터는 배열에서 원하는 값을 찾는 알고리즘이다.
물론 단순히 반복문을 중첩하여 값을 찾을 수 있지만 메모리와 시간효율을 위해 투포인터를 사용한다.
투포인터는 크게 두가지 방식으로 사용된다.
배열 S에서 두 요소의 합이 9인 조합을 찾는다면?
S = [1, 2, 3, 4, 5, 6, 7]
left = 0
right = len(S) - 1
ans_list = []
while left < right:
sum = S[left]+S[right]
if sum < 9:
left +=1
elif sum>9:
right -= 1
else:
ans_list.append((S[left],S[right]))
left +=1
right -=1
print(ans_list)
2번 방식은 해당 문제가 나오면 풀어보겠다.