合并区间- python-排序
·
题目:
思路:
- 按每一个区间的左边界进行排序
- 比较当前区间的左边界跟ans中最后一个区间的右边界进行比较
- 若大于,则直接插入ans
- 不然,比较当前区间的右边界和ans中最后一个区间的右边界,取大的,合并后插入ans
代码:
class Solution:
def merge(self, intervals: List[List[int]]) -> List[List[int]]:
intervals.sort(key=lambda x:x[0])#排序
ans = []
for interval in intervals:
if not ans or ans[-1][1]<interval[0]:
ans.append(interval)
else:
ans[-1][1] = max(ans[-1][1],interval[1])
return ans
更多推荐
所有评论(0)