Given a collection of intervals, merge all overlapping intervals.
Example 1:
1 2 3
Input: [[1,3],[2,6],[8,10],[15,18]] Output: [[1,6],[8,10],[15,18]] Explanation: Since intervals [1,3] and [2,6] overlaps, merge them into [1,6].
2019.9.4 独立做出来了
方法:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
class(object): defmerge(self, intervals): """ :type intervals: List[List[int]] :rtype: List[List[int]] """ if len(intervals)<=1: return intervals intervals.sort(key = lambda x:x[0]) i = 0 while i<len(intervals)-1: if intervals[i][1]<intervals[i+1][0]: i += 1 else: intervals[i] = [min(intervals[i][0],intervals[i+1][0]), max(intervals[i][1],intervals[i+1][1])] intervals.pop(i+1) return intervals
类似题目:
Insert Interval Meeting Rooms Meeting Rooms II Teemo Attacking Add Bold Tag in String Range Module Employee Free Time Partition Labels Interval List Intersections
近期评论