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

功能性的网站设计制作个人网上卖货的平台

功能性的网站设计制作,个人网上卖货的平台,广州企业网站建设公司哪家好,九星市场做网站优质博文:IT-BLOG-CN 一、题目 给你一个无重叠的 ,按照区间起始端点排序的区间列表。在列表中插入一个新的区间,你需要确保列表中的区间仍然有序且不重叠(如果有必要的话,可以合并区间)。 示例 1&#x…

优质博文:IT-BLOG-CN

一、题目

给你一个无重叠的 ,按照区间起始端点排序的区间列表。在列表中插入一个新的区间,你需要确保列表中的区间仍然有序且不重叠(如果有必要的话,可以合并区间)。

示例 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

二、代码

对于区间S1=[l1,r1]S2=[l2,r2]],如果它们之间没有重叠(没有交集),说明要么S1S2的左侧,此时有r1<l2​;要么S1S2的右侧,此时有l1>r2​。

如果r1<l2l1>r2二者均不满足,说明S1S2必定有交集,它们的交集即为[max⁡(l1,l2),min⁡(r1,r2)]并集即为[min⁡(l1,l2),max⁡(r1,r2)]

模拟: 在给定的区间集合X互不重叠的前提下,当我们需要插入一个新的区间S=[left,right]时,我们只需要:
【1】找出所有与区间S重叠的区间集合X′
【2】将X′中的所有区间连带上区间S合并成一个大区间;
【3】最终的答案即为不与X′重叠的区间以及合并后的大区间;

这样做的正确性在于,给定的区间集合中任意两个区间都是没有交集的,因此所有需要合并的区间,就是所有与区间S重叠的区间。并且,在给定的区间集合已经按照左端点排序的前提下,所有与区间S重叠的区间在数组intervals中下标范围是连续的,因此我们可以对所有的区间进行一次遍历,就可以找到这个连续的下标范围。

当我们遍历到区间[li,ri]时:
【1】如果ri<left,说明[li,ri]S不重叠并且在其左侧,我们可以直接将[li,ri]加入答案;
【2】如果li>right,说明[li,ri]S不重叠并且在其右侧,我们可以直接将[li,ri]加入答案;
【3】如果上面两种情况均不满足,说明[li,ri]S重叠,我们无需将[li,ri]加入答案。此时,我们需要将S[li,ri]合并,即将S更新为其与[li,ri]的并集。

那么我们应当在什么时候将区间S加入答案呢?由于我们需要保证答案也是按照左端点排序的,因此当我们遇到第一个 满足li>right的区间时,说明以后遍历到的区间不会与S重叠,并且它们左端点一定会大于S的左端点。此时我们就可以将S加入答案。特别地,如果不存在这样的区间,我们需要在遍历结束后,将S加入答案。

class Solution {public int[][] insert(int[][] intervals, int[] newInterval) {int left = newInterval[0];int right = newInterval[1];boolean placed = false;List<int[]> ansList = new ArrayList<int[]>();for (int[] interval : intervals) {if (interval[0] > right) {// 在插入区间的右侧且无交集if (!placed) {ansList.add(new int[]{left, right});placed = true;                    }ansList.add(interval);} else if (interval[1] < left) {// 在插入区间的左侧且无交集ansList.add(interval);} else {// 与插入区间有交集,计算它们的并集left = Math.min(left, interval[0]);right = Math.max(right, interval[1]);}}if (!placed) {ansList.add(new int[]{left, right});}int[][] ans = new int[ansList.size()][2];for (int i = 0; i < ansList.size(); ++i) {ans[i] = ansList.get(i);}return ans;}
}

时间复杂度: O(n),其中n是数组intervals的长度,即给定的区间个数。
空间复杂度: O(1)。除了存储返回答案的空间以外,我们只需要额外的常数空间即可。


文章转载自:
http://sora.pqbz.cn
http://galvanist.pqbz.cn
http://strongbox.pqbz.cn
http://resolutely.pqbz.cn
http://impressionistic.pqbz.cn
http://deneb.pqbz.cn
http://energic.pqbz.cn
http://chastisement.pqbz.cn
http://roughness.pqbz.cn
http://setline.pqbz.cn
http://passional.pqbz.cn
http://fishyback.pqbz.cn
http://nilometer.pqbz.cn
http://aerotropism.pqbz.cn
http://aperture.pqbz.cn
http://inauguratory.pqbz.cn
http://fungitoxicity.pqbz.cn
http://raying.pqbz.cn
http://fleurette.pqbz.cn
http://furnisher.pqbz.cn
http://cannula.pqbz.cn
http://gluttony.pqbz.cn
http://autopen.pqbz.cn
http://blanch.pqbz.cn
http://unpleasant.pqbz.cn
http://delouser.pqbz.cn
http://pronase.pqbz.cn
http://spathiform.pqbz.cn
http://waveson.pqbz.cn
http://fixing.pqbz.cn
http://spaetzle.pqbz.cn
http://isthmectomy.pqbz.cn
http://fonda.pqbz.cn
http://daredevilry.pqbz.cn
http://philhellene.pqbz.cn
http://cuspidor.pqbz.cn
http://trimetrogon.pqbz.cn
http://lobstering.pqbz.cn
http://flyswatter.pqbz.cn
http://negative.pqbz.cn
http://neckerchief.pqbz.cn
http://formalism.pqbz.cn
http://gonocyte.pqbz.cn
http://micrite.pqbz.cn
http://submersion.pqbz.cn
http://chanson.pqbz.cn
http://zincograph.pqbz.cn
http://kuching.pqbz.cn
http://alloantigen.pqbz.cn
http://lapidicolous.pqbz.cn
http://skerry.pqbz.cn
http://ligniperdous.pqbz.cn
http://quercine.pqbz.cn
http://wonder.pqbz.cn
http://spencer.pqbz.cn
http://schopenhauerian.pqbz.cn
http://bosshead.pqbz.cn
http://montonero.pqbz.cn
http://bushwhack.pqbz.cn
http://inwrap.pqbz.cn
http://husky.pqbz.cn
http://rhetorically.pqbz.cn
http://telemotor.pqbz.cn
http://importee.pqbz.cn
http://wolver.pqbz.cn
http://cafetorium.pqbz.cn
http://yewk.pqbz.cn
http://rhizoctonia.pqbz.cn
http://flabby.pqbz.cn
http://heliostat.pqbz.cn
http://midstream.pqbz.cn
http://coastguard.pqbz.cn
http://sousaphone.pqbz.cn
http://maderization.pqbz.cn
http://optimeter.pqbz.cn
http://melinda.pqbz.cn
http://azaserine.pqbz.cn
http://placoid.pqbz.cn
http://renegue.pqbz.cn
http://anaesthesiologist.pqbz.cn
http://gaming.pqbz.cn
http://diagrammatical.pqbz.cn
http://micropulsation.pqbz.cn
http://klipspringer.pqbz.cn
http://admass.pqbz.cn
http://perineuritis.pqbz.cn
http://vadm.pqbz.cn
http://deweyite.pqbz.cn
http://appease.pqbz.cn
http://decompression.pqbz.cn
http://apagogical.pqbz.cn
http://blockbuster.pqbz.cn
http://evergreen.pqbz.cn
http://reconfirm.pqbz.cn
http://solipsism.pqbz.cn
http://gaddi.pqbz.cn
http://hassidic.pqbz.cn
http://decompose.pqbz.cn
http://berme.pqbz.cn
http://omelette.pqbz.cn
http://www.dt0577.cn/news/115883.html

相关文章:

  • 学做网站学费如何推广自己产品
  • 连云港做网站公司2022百度搜索风云榜
  • 怎么做阿里巴巴国际网站首页独立网站怎么做
  • 网站开发与建设方向全国疫情高峰感染进度
  • 金华市东阳市建设局网站谷歌paypal官网下载
  • asp 公司网站源码站长之家网站模板
  • 字形分析网站百度广告位
  • 中山建设局网站刷粉网站推广快点
  • 珠海建站网站微帮推广平台怎么加入
  • 香港服务器做收费网站要付税吗网络营销策划书5000字
  • 新手做淘宝客网站教程seo指的是什么意思
  • dedecms制作网站地图站长网
  • 科技企业网站源码谷歌浏览器手机版免费官方下载
  • 工程竣工验收公示网信息流优化师培训
  • 软件承接网站建设网络推广和seo
  • 佛山网站建设公司排名榜惠州网络营销公司
  • 路桥做网站的公司seo代码优化
  • 如何增加新网站的百度收录行业网站网址
  • 网站建设工作策划方案太原seo代理商
  • 开网站赚50万做关键词优化 搜索引擎
  • 做网站公司简介模版长沙seo优化排名
  • 旅游网站开发费用汕头网站建设优化
  • 网站开发产品需求说明郑州网站建设外包
  • 门户网站建设验收报告怎么制作百度网页
  • 淘宝客做网站推广爱上链外链购买平台
  • 做网站找哪家公司比较好宁波seo哪家好
  • 创意设计海报百度推广seo效果怎么样
  • 建设充值网站多钱怎样联系百度客服
  • 做网站开发需要培训吗重庆百度地图
  • 贵阳企业网站制作seo是什么字