线性时间复杂度的算法。利用集合,每次找到每个区间的最小点,
然后摸清该序列长度。
from typing import *
class Solution:
def removeCoveredIntervals(self, intervals: List[List[int]]) -> int:
intervals.sort(key=lambda x:(x[0],-x[1]))
cnt=1
i=1
bound=intervals[0][1]
while i<len(intervals):
if intervals[i][1]<=bound:
i+=1
else:
cnt+=1
bound=intervals[i][1]
i+=1
return cnt