We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent a2918ef commit 102f5ecCopy full SHA for 102f5ec
merge-intervals/uraflower.js
@@ -0,0 +1,27 @@
1
+/**
2
+ * @param {number[][]} intervals
3
+ * @return {number[][]}
4
+ */
5
+const merge = function (intervals) {
6
+ // 시작점 기준으로 정렬
7
+ intervals.sort((a, b) => Number(a[0]) - Number(b[0]));
8
+ const result = [];
9
+
10
+ for (const current of intervals) {
11
+ const last = result[result.length - 1];
12
13
+ // 겹치는 구간이 있으면, 구간의 끝점을 더 큰 것으로 덮어씌우기
14
+ if (last && current[0] <= last[1]) {
15
+ result[result.length - 1][1] = Math.max(current[1], last[1]);
16
+ }
17
+ // 겹치는 구간이 없으면, 새로 집어 넣기
18
+ else {
19
+ result.push(current);
20
21
22
23
+ return result;
24
+};
25
26
+// 시간복잡도: O(n * log n)
27
+// 공간복잡도: O(n)
0 commit comments