구간 트리 관련 문제는 주로 세그먼트 트리, Fenwick 트리, 또는 이진 탐색 트리를 활용합니다.
Easy:
- Merge Intervals (LeetCode 56)
설명: 주어진 구간을 병합합니다.
핵심 개념: 정렬과 병합. - Insert Interval (LeetCode 57)
설명: 주어진 구간 리스트에 새로운 구간을 삽입합니다.
핵심 개념: 이진 탐색과 병합. - Non-overlapping Intervals (LeetCode 435)
설명: 겹치지 않는 구간을 만들기 위해 제거해야 할 최소 구간 개수를 찾습니다.
핵심 개념: 정렬과 그리디.
Medium:
- Range Sum Query 2D - Immutable (LeetCode 304)
설명: 2D 행렬에서 주어진 범위의 합을 계산합니다.
핵심 개념: 구간 합 배열. - Interval List Intersections (LeetCode 986)
설명: 두 구간 리스트의 교집합을 찾습니다.
핵심 개념: 투 포인터. - Range Module (LeetCode 715)
설명: 숫자 범위의 추가, 제거, 조회를 처리합니다.
핵심 개념: 세그먼트 트리. - My Calendar II (LeetCode 731)
설명: 일정에서 이중 예약을 처리합니다.
핵심 개념: 구간 트리와 스위핑. - Count of Range Sum (LeetCode 327)
설명: 주어진 범위에 속하는 합을 가지는 부분 배열의 개수를 찾습니다.
핵심 개념: 세그먼트 트리 또는 병합 정렬. - Maximum Number of Events That Can Be Attended (LeetCode 1353)
설명: 최대한 많은 이벤트를 참석할 수 있는 방법을 찾습니다.
핵심 개념: 정렬과 우선순위 큐. - Number of Airplane in the Sky (LintCode 391)
설명: 특정 시간에 하늘에 있는 항공기의 최대 수를 찾습니다.
핵심 개념: 스위핑. - Employee Free Time (LeetCode 759)
설명: 직원들의 자유 시간을 찾습니다.
핵심 개념: 구간 병합.
'Coding Test > 알고리즘 이론' 카테고리의 다른 글
Heap / Priority Que (0) | 2025.01.20 |
---|---|
트리 종합 - leetcode (31) (0) | 2025.01.12 |
동적인 순서 통계 (Dynamic Order Statistics) - leetcode (8) (0) | 2025.01.11 |
레드-블랙 트리 (Red-Black Tree) - leetcode (10) (0) | 2025.01.11 |
k-Select (kth-order statistics) - leetcode (26) (0) | 2025.01.11 |