#
# 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
#
#
# @param intervals int整型二维数组
# @return int整型二维数组
#
class Solution:
def mergeTimeIntervals(self , intervals: List[List[int]]) -> List[List[int]]:
if not intervals:
return []
if len(intervals) == 1:
return intervals
# 按开始时间排下序
intervals = list(sorted(intervals))
# ret记录统计结果,cur用于记录当前区间
ret = []
cur = intervals[0]
for interval in intervals[1:]:
# 开始时间小于等于当前记录区间,合并区间
if interval[0] <= cur[1]:
cur[1] = max(interval[1], cur[1])
# 结束当前计数,开始计算新的区间
else:
ret.append(cur)
cur = interval
# 遍历完了把最后记录的区间加上
ret.append(cur)
return ret