算法 第36天 贪心5-56 合并区间

以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。

在这里插入图片描述

def merge(intervals:list)->list:
	result=[]
	if not intervals:
		return result
	if len(intervals)==0:
		return result
	intervals.sort(key=lambda x:x[0])
	result.append(intervals[0])
	
	for i in range(1,len(intervals)):
		if result[-1][1]>=intervals[i][0]:
			result[-1][1]=max(result[-1][1],intervals[i][1])
		else:
			result.append(intervals[i])
	return resulr
上一篇:openjudge_2.5基本算法之搜索_1792:迷宫