河源北京网站建设,河南建设工程信息网 建议访问中项网,关于做网站常见的问题,百度招聘2022年最新招聘给出一个无重叠的 #xff0c;按照区间起始端点排序的区间列表。
在列表中插入一个新的区间#xff0c;你需要确保列表中的区间仍然有序且不重叠#xff08;如果有必要的话#xff0c;可以合并区间#xff09;。
示例 1:
输入: intervals [[1,3],[6,9]], newInterval …给出一个无重叠的 按照区间起始端点排序的区间列表。
在列表中插入一个新的区间你需要确保列表中的区间仍然有序且不重叠如果有必要的话可以合并区间。
示例 1:
输入: intervals [[1,3],[6,9]], newInterval [2,5] 输出: [[1,5],[6,9]] 示例 2:
输入: intervals [[1,2],[3,5],[6,7],[8,10],[12,16]], newInterval [4,8] 输出: [[1,2],[3,10],[12,16]] 解释: 这是因为新的区间 [4,8] 与 [3,5],[6,7],[8,10] 重叠。
思路和上一题思路一样就是做之前插入新区见即可。
上一题链接
class Solution:def insert(self, intervals: List[Interval], newInterval: Interval) - List[Interval]:lengthlen(intervals)for x in range(length1):if xlength or intervals[x][0]newInterval[0]:intervalsintervals[:x][newInterval]intervals[x:]breakres []for i in intervals:if not res or res[-1][1] i[0]:res.append(i)else:res[-1][1] max(i[1],res[-1][1])return res