반응형
1. 문제
https://leetcode.com/problems/merge-intervals/
2. 코드
/**
* @param {number[][]} intervals
* @return {number[][]}
*/
var merge = function(intervals) {
let stack = [];
intervals.sort((a,b) => a[0] - b[0]);
let newIntervals = intervals.slice();
stack.push(newIntervals.shift());
for(let i=1;i<intervals.length;i++){
let temp = stack.pop();
let cur = newIntervals.shift();
if(temp[0] <= cur[0] && temp[1] >= cur[0]) stack.push([temp[0],Math.max(temp[1],cur[1])]);
else{
stack.push(temp);
stack.push(cur);
}
}
return stack;
};
반응형
'리트코드 > midium' 카테고리의 다른 글
[리트코드] 3. Longest Substring Without Repeating Characters - js (슬라이딩 윈도우) (0) | 2023.08.16 |
---|---|
[리트코드] 64. Minimum Path Sum - js (0) | 2023.08.16 |
[리트코드] 198. House Robber - js (0) | 2023.08.14 |
[리트코드] 347. Top K Frequent Elements - js (해시) (0) | 2023.08.14 |
[리트코드] 189. Rotate Array - js (0) | 2023.08.13 |