当前位置: 首页 > news >正文

安徽省建设工程关键词优化难易

安徽省建设工程,关键词优化难易,网站源代码安装,代账公司注册条件题目#xff1a; 给你一个 无重叠的 #xff0c;按照区间起始端点排序的区间列表。 在列表中插入一个新的区间#xff0c;你需要确保列表中的区间仍然有序且不重叠#xff08;如果有必要的话#xff0c;可以合并区间#xff09;。 来源#xff1a;力扣#xff08;LeetC… 题目 给你一个 无重叠的 按照区间起始端点排序的区间列表。 在列表中插入一个新的区间你需要确保列表中的区间仍然有序且不重叠如果有必要的话可以合并区间。 来源力扣LeetCode 链接力扣 示例 示例 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] 重叠。 示例 3 输入intervals [], newInterval [5,7] 输出[[5,7]] 示例4 输入intervals [[1,5]], newInterval [2,3] 输出[[1,5]] 示例5 输入intervals [[1,5]], newInterval [2,7] 输出[[1,7]] 解法 首先处理特殊情况如果intervals为空返回newInterval如果newInterval的右区间比intervals第1个区间的左区间小说明newInterval比intervals中所有区间小返回[newInterval] intervals同理如果newInterval的左区间比intervals第最后一个区间的右区间大返回intervals [newInterval]。剩下的情况进入算法结果存在result。 遍历intervals如果newInterval的左区间大当前区间的右区间说明没有交集添加当前区间到result。否则记录交集的左区间为当前区间和newInterval中小的左区间设为left。接着从当前区间开始遍历剩下intervals如果newInterval的右区间大于当前区间的右区间说明newInterval的范围可以覆盖当前区间所以可以跳过当前区间如果当前已经是最有一个区间设right为newInterval的右区间然后添加[left, right]到result返回result。如果newInterval的右区间小于等于当前区间的右区间说明和newInterval有交集的最大右区间已出现如果newInterval的右区间大于等于当前区间和左区间设right为newInterval和当前区间中大的右区间添加[left, right]到result然后把后面区间也加入result。如果newInterval的右区间小于当前区间和左区间说明newInterval和当前区间没有交集这里对应两种情况分别是newInterval的左区间和前面区间有交集以及newInterval的左区间和前面区间没有交集所以设right为newInterval的右区间然后添加[left, right]到result再把后面区间也加入result。 代码 class Solution:def insert(self, intervals: List[List[int]], newInterval: List[int]) - List[List[int]]:if len(intervals) 0:return [newInterval]if newInterval[1] intervals[0][0]:return [newInterval] intervalsif newInterval[0] intervals[-1][1]:return intervals [newInterval]result []for index1, interval1 in enumerate(intervals):if newInterval[0] interval1[1]:left min(interval1[0], newInterval[0])for index2, interval2 in enumerate(intervals[index1:]):if newInterval[1] interval2[1]:if newInterval[1] interval2[0]:result.append([left, max(interval2[1], newInterval[1])])else:result.append([left, newInterval[1]])result.append(interval2)if index2 ! len(intervals[index1:]) - 1:result.extend(intervals[index1:][index2 1:])return resultelse:if index2 len(intervals[index1:]) - 1:result.append([left, newInterval[1]])return resultelse:result.append(interval1)
http://www.hkea.cn/news/14541720/

相关文章:

  • wed网站开发是什么广告设计属于什么学类
  • 南昌网站建设兼职百度一下首页登录入口
  • 做app网站需要什么wordpress博客 知乎
  • 网站建设汽车后市场做企业网站需要的人
  • 厦门企业网站建设补贴十大开源软件
  • 沧州市科一网站常宁市网站建设
  • 网站建设与维护 技能关键词简谱
  • 网站统计分析网站免费虚拟主机申请
  • wordpress wp option东莞网站推广及优化
  • 诸城市建设局网站电子商务网站多少钱
  • 建设网站一般多钱广告公司名字大全创意
  • 南昌制作手机网站徐州百度推广总代理
  • 南京网站制作搭建网站排名总是不稳定
  • 天津品牌网站设计新增病例最新消息
  • 网站备案经验网页设计赚钱吗
  • 建站网站赚钱吗自助网站系统
  • 京东电器商城网上购物公司网站标题优化
  • 天津专门做网站物业公司管理系统
  • 教育网站建设改版怎么在Front做网站
  • 电子商务网站策划 ppt常见网页制作工具
  • 阿里巴巴国际网站怎么做专业网站建设公司哪里好
  • 苏州做网站推广的公司哪家好建设开源社区网站什么意思
  • 南通企业建站模板个人养老金制度具体内容
  • 湖州建设局新网站在北京找工作有哪些招聘网站
  • 外贸网站 开源制作图片库
  • 网站建设捌金手指专业1网页布局设计摘要
  • 广州专业网站建设关于电子商务网站建设与管理的论文
  • 视频网站开发工具网推是做什么的
  • 建站赔补泰安房产成交信息网
  • 导购网站制作wordpress 淘宝客放置root文件