[Algorithm] 슬라이딩 윈도우(Sliding Window)
·
🔢 Algorithm
슬라이딩 윈도우는 배열이나 문자열과 같은 선형 데이터 구조에서 특정 크기의 '윈도우'를 이동시키면서 문제를 해결하는 알고리즘 기법입니다. 이 방법은 다음과 같은 상황에서 특히 유용합니다:연속된 요소들의 부분집합을 처리해야 할 때배열이나 문자열에서 특정 조건을 만족하는 부분을 찾아야 할 때고정된 크기의 윈도우를 이동시키면서 계산을 수행해야 할 때 슬라이딩 윈도우의 작동 원리윈도우 크기 설정: 문제에 따라 적절한 윈도우 크기를 정합니다.초기 윈도우 설정: 데이터 구조의 시작점에서 윈도우 크기만큼의 요소를 처리합니다.윈도우 이동: 윈도우를 한 칸씩 이동시킵니다.윈도우 업데이트: 새로 추가된 요소를 처리하고, 제외된 요소를 제거합니다.반복: 데이터 구조의 끝에 도달할 때까지 3-4 과정을 반복합니다. 슬라이딩 ..
[Javascript][Programmers] 방문 길이
·
🔢 Algorithm
문제키워드: 중복 처리, 역방향 나의 풀이시간 복잡도: O(N)function solution(dirs) { // ➊ 중복 처리를 위한 Set const visited = new Set(); let x = 0, y = 0; // ➋ 방향에 따른 좌표 변화 const moves = { 'U': [0, 1], 'D': [0, -1], 'R': [1, 0], 'L': [-1, 0] }; for (const dir of dirs) { const [dx, dy] = moves[dir]; const nx = x + dx; const ny = y + dy; // ➌ 주어진 범위 내..
윤도기
'Algorithm' 태그의 글 목록
상단으로