CS/알고리즘

    슬라이딩 윈도우 | sliding window algorithm

    슬라이딩 윈도우 | sliding window algorithm

    배열에서 일정 범위를 탐색하며 조건에 부합하는 Subset을 찾는 방식. 창문을 오른쪽으로 미는 느낌이 나기 때문에 Sliding Window라는 이름이 붙은 것 같다. 알고리즘 활용 투포인터 배열 내의 일정 범위를 기억해야하기 때문에 시작과 끝을 마킹하는 변수가 필요하다. start, end left, right 필자는 left, right를 즐겨쓴다. 크기 고정 or 변동 배열 내의 하위 배열(sliding window)의 크기는 풀고자하는 문제에 따라 고정일수도 있고 변동일 수도 있다. 변동일 경우 right가 움직일 때마다 조건을 검사해주어 left를 조정해주어야 한다. 아래는 구간을 변동하는 간단한 예시이다. int left = 0; for(int right = 0; right < len; ri..