투 포인터 알고리즘

journey·2025년 2월 17일

투포인터(Two Pointers) 알고리즘

투포인터 알고리즘은 정렬된 배열이나 리스트에서 두 개의 포인터(인덱스)를 사용하여 문제를 해결하는 기법.

개념

  • 배열이나 리스트에서 두 개의 포인터 변수를 사용하여 특정 조건을 만족하는 값들을 탐색한다.
  • 일반적으로 두 포인터를 서로 다른 방향에서 움직이며 탐색한다.

대표사례

  • 합이 특정 값이 되는 두 수 찾기: 배열에서 두개의 숫자 합이 M이 되는 경우 찾기
  • 두 개의 리스트에서 공통 원소 찾기: 정렬된 두 개의 리스트에서 교집합 찾기
  • 배열의 연속된 부분 구간 찾기: 특정 합을 갖는 연속된 부분 배열 찾기 (슬라이딩 윈도우 기법)
  • 정렬된 배열에서 특정 조건을 만족하는 개수 세기: 정렬된 배열에서 차이가 K인 숫자 쌍의 개수 찾기
profile
개발 여정

0개의 댓글