File tree Expand file tree Collapse file tree 1 file changed +34
-0
lines changed Expand file tree Collapse file tree 1 file changed +34
-0
lines changed Original file line number Diff line number Diff line change 1+ - ๋ฌธ์ : https://leetcode.com/problems/merge-intervals/
2+ - ํ์ด: https://algorithm.jonghoonpark.com/2024/07/23/leetcode-56
3+
4+ ``` java
5+ class Solution {
6+ public int [][] merge (int [][] intervals ) {
7+ Arrays . sort(intervals, Comparator . comparingInt(o - > o[0 ]));
8+
9+ Deque<int[]> intervalDeque = new ArrayDeque<> ();
10+ intervalDeque. add(intervals[0 ]);
11+ for (int i = 1 ; i < intervals. length; i++ ) {
12+ int [] lastElement = intervalDeque. getLast();
13+ int [] nextElement = intervals[i];
14+
15+ if (lastElement[1 ] >= nextElement[0 ]) {
16+ int [] mergedElement = new int []{
17+ lastElement[0 ],
18+ Math . max(lastElement[1 ], nextElement[1 ])
19+ };
20+ intervalDeque. removeLast();
21+ intervalDeque. add(mergedElement);
22+ } else {
23+ intervalDeque. add(nextElement);
24+ }
25+ }
26+
27+ return intervalDeque. toArray(int [][]:: new );
28+ }
29+ }
30+ ```
31+
32+ ### TC , SC
33+
34+ ์๊ฐ ๋ณต์ก๋๋ `O(n* logn)` ๊ณต๊ฐ ๋ณต์ก๋๋ `O(n)` ์ด๋ค. (๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ๊ธฐ ์ํด ์์ฑ๋ `int [][]`๋ ๊ณ ๋ คํ์ง ์๋๋ค. )
You canโt perform that action at this time.
0 commit comments