[슬라이딩 윈도우]
고정 사이즈 윈도우가 이동하면서 윈도우 내에 있는 데이터를 이용해 문제를 풀이하는 알고리즘을 말한다.
슬라이딩 윈도우는 정렬 여부와 상관없이 고정 사이즈 윈도우를 사용해서 적용이 가능하다.
한 방향으로만 이동한다.
2개의 네트워크 호스트 간의 패킷흐름을 제어하기 위한 방법을 지칭 하는 네트워크 용어이기도 하다.
네트워크에서 패킷을 전송할 때 고정 사이즈의 윈도우가 옆으로 이동하면서 그 다음 패킷들을 전송하는 방식을 말한다.
1)최대 슬라이딩 윈도우 - 상, 슬라이딩 윈도우
배열 nums가 주어졌을 때 k 크기의 슬라이딩 윈도우를 오른쪽 끝까지 이동하면서 최대 슬라이딩 윈도우를 구하라.
https://leetcode.com/problems/sliding-window-maximum/
[팁!!!]
-브루트 포스는 타임 리밋에 걸린다.
-큐를 이용한 좀더 효율적인 풀이가 필요하다.
2)부분 문자열이 포함된 최소 윈도우- 상, 슬라이딩 윈도우
문자열 S와 T를 입력받아 O(n)에 T의 모든 문자가 포함된 S의 최소 윈도우를 찾아라.
https://leetcode.com/problems/minimum-window-substring
3)가장 긴 반복 문자 대체 - 중, 슬라이딩 윈도우