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

重庆祥云平台做网站公众号的维护与运营

重庆祥云平台做网站,公众号的维护与运营,石家庄网推公司,门户类网站建设需要多少钱【每日一题】57. 插入区间 57. 插入区间题目描述解题思路 57. 插入区间 题目描述 给你一个 无重叠的 #xff0c;按照区间起始端点排序的区间列表。 在列表中插入一个新的区间#xff0c;你需要确保列表中的区间仍然有序且不重叠#xff08;如果有必要的话#xff0c;可… 【每日一题】57. 插入区间 57. 插入区间题目描述解题思路 57. 插入区间 题目描述 给你一个 无重叠的 按照区间起始端点排序的区间列表。 在列表中插入一个新的区间你需要确保列表中的区间仍然有序且不重叠如果有必要的话可以合并区间。 示例 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]]提示 0 intervals.length 104 intervals[i].length 2 0 intervals[i][0] intervals[i][1] 105 intervals 根据 intervals[i][0] 按 升序 排列 newInterval.length 2 0 newInterval[0] newInterval[1] 105 解题思路 思路将新区间插入区间列表再按照56合并区间方法合并区间。 class Solution { public:vectorvectorint insert(vectorvectorint intervals, vectorint newInterval) {// 将新区间加入区间列表intervals.push_back(newInterval);// 区间按照左端点排序sort(intervals.begin(),intervals.end());// 合并区间咯int nintervals.size();// 结果区间vectorvectorint res;res.push_back(intervals[0]);for(int i1;in;i){if(intervals[i][0]res.back()[1])res.push_back(intervals[i]);elseres.back()[1]max(res.back()[1],intervals[i][1]);}return res;} };优化原本区间列表已经有序那么可以利用该信息进行合并。将原有区间列表分为三部分第一部分是无重叠部分第二部分是有重叠部分第三部分是无重叠部分可以通过绘制线形图直观表示。 class Solution { public:vectorvectorint insert(vectorvectorint intervals, vectorint newInterval) {int nintervals.size();int i0;vectorvectorint res;// 第一部分无重叠区间while(innewInterval[0]intervals[i][1]){res.push_back(intervals[i]);i;}// 第二部分重叠区间 相当于将新区间与重叠区间不断合并然后更新合并区间// [[1,2],[3,5],[6,7],[8,10],[12,16]]while(innewInterval[1]intervals[i][0]){newInterval[0]min(newInterval[0],intervals[i][0]);newInterval[1]max(newInterval[1],intervals[i][1]);i;}// [[1,5]] [6,8] 即直接合并该newIntervalres.push_back(newInterval);// 第三部分无重叠区间while(in){res.push_back(intervals[i]);i;}return res;} };总结注意因为原有区间列表有序故当第一部分无重叠区间处理完毕后后面即为第二部分有重叠区间此时满足newInterval[0]interval[i][1]那么有重叠区间的条件即为newInterval[1]interval[i][0]此时将新区间逐个与各个重叠区间进行合并同时更新新区间这样才能得到最后合并后的大区间。注意[[1,5]] [6,8] 即直接合并该newInterval。
http://www.zqtcl.cn/news/429516/

相关文章:

  • 建设银行u盾用网站打不开软件工程师证书有哪些
  • 网站建设域名的购买多少钱注册的公司才能参加投标
  • 做婚纱网站策划方案php网站超市源码
  • 济南网站搭建公司有哪些做企业网站的
  • 360做企业网站多少钱凡客诚品网
  • 效果好的徐州网站建设LAMP环境wordpress放在哪里
  • 考试类网站如何做什么是网络营销?有何特点
  • 网站制作公司哪家好wordpress插件怎么汉化
  • 南阳东莞网站建设公司网页升级访问狼在线观看
  • 备案的网站每年都要备案么东平县建设局网站
  • 做网站必须得ipc手机网站制作方法
  • 山东省建设监理协会网站打不开移动互联网开发实践
  • 南宁微网站制作需要多少钱小米商城网站开发文档
  • 制作销售网站有哪些如何制作个人网页设计
  • 新网站做内链智能网站推广软件
  • 西宁市住房和城乡建设局网站广州站是指哪个站
  • 帮建网站网页设计师考试内容
  • seo网站开发txt 发布 wordpress
  • 资讯门户类网站模板定制系统开发公司
  • 让网站快速收录初中毕业如何提升学历
  • 石家庄做网站价格seo优化效果
  • 为什么浏览器打开是2345网址导航seo免费资源大全
  • 网站工程是干啥的动态个人网页制作html教程
  • 阿里云多网站建设wordpress 统计分析
  • 长沙网站定制公司科技特长生
  • 查公司的口碑和评价的网站中学生怎么做网站
  • 做网站买空间多少钱深圳seo优化公司
  • 中国建设银行北京市互联网网站wordpress商城购物表单
  • 万网网站备案管理查询工程建设项目的网站
  • 网站建设国内外研究现状模板ppt设计大赛