File tree 1 file changed +13
-10
lines changed
1 file changed +13
-10
lines changed Original file line number Diff line number Diff line change @@ -4,18 +4,21 @@ def merge(self, intervals):
4
4
:type intervals: List[List[int]]
5
5
:rtype: List[List[int]]
6
6
"""
7
- if not intervals :
7
+ if not intervals or not intervals [ 0 ] :
8
8
return intervals
9
- intervals = sorted (intervals , key = lambda x : x [0 ])
10
- start , end = intervals [0 ][0 ], intervals [0 ][1 ]
11
9
10
+ intervals = sorted (intervals , key = lambda x :x [0 ])
11
+
12
12
res = []
13
- for i , interval in enumerate (intervals ):
14
- if interval [0 ] > end :
15
- res .append ([start , end ])
16
- start , end = interval [0 ], interval [1 ]
13
+ start , end = intervals [0 ][0 ], intervals [0 ][1 ]
14
+ for interval in intervals :
15
+ s , e = interval [0 ], interval [1 ]
16
+
17
+ if s <= end : # overlap
18
+ end = max (end , e )
17
19
else :
18
- end = max (end , interval [1 ])
20
+ res .append ([start , end ])
21
+ start , end = s , e
22
+
19
23
res .append ([start , end ])
20
- return res
21
-
24
+ return res
You can’t perform that action at this time.
0 commit comments