Skip to content
Algorithm.js | Algorithm in JavaScript
📚 단일 패턴

56. Merge Intervals

시작값으로 정렬한 뒤 겹치는 구간을 순차적으로 병합해 최소한의 구간 목록을 만드는 문제와 풀이 정리

Oct 22, 2025

문제 설명

풀이 아이디어

해결 전략

풀이

구현

/**
* @param {number[][]} intervals
* @return {number[][]}
*/
var merge = function(intervals) {
intervals.sort((a,b) => a[0] - b[0]);
const stack = [];
for (const interval of intervals) {
if (stack.length === 0 || stack.at(-1)[1] < interval[0]) {
stack.push(interval)
} else {
stack.at(-1)[1] = Math.max(
stack.at(-1)[1],
interval[1]
)
}
}
return stack;
};