투 포인터(Two Pointers) 알고리즘은 주로 배열이나 리스트와 같은 순차적인 자료구조에서 특정 범위를 탐색하거나 부분합, 부분 문자열 등을 찾을 때 유용한 알고리즘이다. 투 포인터 알고리즘은 이름 그대로, 두 개의 포인터를 이용하여 문제를 해결한다. 이 알고리즘은 보통 정렬된 배열에서 찾는 문제에서 유용하게 사용한다. 1. 배열이나 리스트에서 각각 왼쪽 포인터(left)와 오른쪽 포인터(right)를 정한다. 2. right를 체크 대상 추가를 위해 +1 씩한다. 3. left를 체크 대상 해제를 위해 +1 씩한다. 4. 반복해서 두 포인터의 위치를 조정하며 문제를 해결한다. 보통 이 알고리즘은 두 포인터의 위치를 이동시키는 규칙을 설정하여 사용한다. 예를 들어, 부분합을 구하는 문제에서는 왼쪽 ..