-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path56.py
More file actions
31 lines (26 loc) · 806 Bytes
/
56.py
File metadata and controls
31 lines (26 loc) · 806 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
class Solution(object):
def merge(self, intervals):
"""
:type intervals: List[List[int]]
:rtype: List[List[int]]
"""
ret = []
if len(intervals)==0:
return ret
intervals.sort(key=lambda x:x[0])
begin = intervals[0][0]
end = intervals[0][1]
if len(intervals)==1:
return [[begin, end]]
for i in xrange(1, len(intervals)):
if intervals[i][0]<=end:
end = max(intervals[i][1], end)
else:
ret.append([begin, end])
begin = intervals[i][0]
end = intervals[i][1]
ret.append([begin, end])
return ret
if __name__ == '__main__':
solution = Solution()
print solution.merge([[1,4],[2,3]])