示例1 输入[[10,30],[20,60],[80,100],[150,180]]输出[[10,60],[80,100],[150,180]]示例2输入[[0,10],[10,20]]输出[[0,20]]# class Interval:# def __init__(self, a=0, b=0):# self.start = a# self.end = b## 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可##华为#val类一维数组# @return Interval类一维数组#class Solution:def merge(self , intervals: List[Interval]) -> List[Interval]:# write code hereif not intervals or len(intervals)<=1:return intervals# 按区间的起点升序排序intervals.sort(key=lambda x: x.start)merge = []current_start,current_end = intervals[0].start,intervals[0].endfor interval in intervals[1:]:if current_end >= interval.start:current_end = max(current_end,interval.end)else:merge.append(Interval(current_start,current_end))current_start,current_end = interval.start,interval.endmerge.append(Interval(current_start,current_end))return merge