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

广告片拍摄制作公司无锡百度关键词优化

广告片拍摄制作公司,无锡百度关键词优化,做网站背景步骤,网站模板修改教程大家好我是苏麟 , 今天说说贪心算法的高频题目 . 大纲 区间问题判断区间是否重叠合并区间插入区间 区间问题 判断区间是否重叠 描述 : 给定一个会议时间安排的数组 intervals ,每个会议时间都会包括开始和结束的时间intervalsl[i] [start, end] ,请你…

大家好我是苏麟 , 今天说说贪心算法的高频题目 .

大纲

    • 区间问题
      • 判断区间是否重叠
      • 合并区间
      • 插入区间

区间问题

判断区间是否重叠

描述 :

给定一个会议时间安排的数组 intervals ,每个会议时间都会包括开始和结束的时间intervalsl[i] = [start, end] ,请你判断一个人是否能够参加这里面的全部会议。

题目 ;

LeetCode 252.会议室

这题需要开会员 , 有实力的小伙伴做一下 .

分析 :
在这里插入图片描述
因为一个人在同一时刻只能参加一个会议,因此题目实质是判断是否存在重叠区间,将区间按照会议开始时间进行排序,然后遍历一遍判断后面的会议开始的时候是否前面的还没有结束即可。也就是上图中如果出现重叠的部分就直接返回false即可

解析 :

class Solution {public int[][] merge(int[][] intervals) {Arrays.sort(intervals,(a,b) -> a[0] - b[0]);for(int i = 1; i < intervals.length;i++){if(intervals[i][0] < intervals[i - 1][1]){return false;}}return true;}
}

合并区间

描述 :

以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。

题目 :

LeetCode 56. 合并区间 :

合并区间
在这里插入图片描述
分析 :

为了方便理解,我们将上述序列画成序列图

在这里插入图片描述

和上一题一样,首先对区间按照起始端点进行升序排序,然后逐个判断当前区间是否与前一个区间重叠如果不重叠的话将当前区间直接加入结果集,反之如果重叠的话,就将当前区间与前一个区间进行合并 .

这里给一个非常好的视频解析 : 合并区间

解析 :

class Solution {public int[][] merge(int[][] intervals) {if(intervals == null || intervals.length == 0){return new int[][]{};}Arrays.sort(intervals,(a,b) -> a[0] - b[0]);List<int[]> list = new ArrayList<>();int start = intervals[0][0];int end = intervals[0][1];for(int[] arr : intervals){if(arr[0] <= end){end = Math.max(end , arr[1]);}else{list.add(new int[]{start,end});start = arr[0];end = arr[1];}}list.add(new int[]{start,end});return list.toArray(new int[][]{});}
}

插入区间

描述 :

给你一个 无重叠的 ,按照区间起始端点排序的区间列表。

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

题目 :

LeetCode 57. 插入区间:

插入区间

在这里插入图片描述

分析 :

在这里插入图片描述
本题就是上一题的再拓展,本题中的区间已经按照起始端点升序排列,因此我们直接遍历区间列表,寻找新区间的插入位置即可。具体步骤如下:

  1. 首先将新区间左边且相离的区间加入结果集 (遍历时,如果当前区间的结束位置小于新区间的开始位15置,说明当前区间在新区间的左边且相离)
  2. 接着判断当前区间是否与新区间重叠,重叠的话就进行合并,直到遍历到当前区间在新区间的右边且相离,将最终合并后的新区间加入结果集
  3. 最后将新区间右边且相离的区间加入结果集

这里也给一个非常好的解析视频 : 插入区间

解析 :

class Solution {public int[][] insert(int[][] intervals, int[] newInterval) {if(intervals == null){return new int[][]{};}List<int[]> list = new ArrayList<>();int i = 0;while(i < intervals.length && newInterval[0] > intervals[i][1]){list.add(intervals[i++]);}while(i < intervals.length && newInterval[1] >= intervals[i][0]){newInterval[0] = Math.min(intervals[i][0],newInterval[0]);newInterval[1] = Math.max(intervals[i++][1],newInterval[1]);}list.add(newInterval);while(i < intervals.length){list.add(intervals[i++]);}return list.toArray(new int[][]{});}
}

这期就到这里 , 下期见啊!

http://www.ds6.com.cn/news/41262.html

相关文章:

  • 网站建设需要平台西安关键词推广
  • 网站开发的英文参考文献网络推广网站有哪些
  • 那个网站上有做婚礼布场样图的电商卖货平台有哪些
  • 织梦 网站根目录百度网站域名注册
  • 企业网站托管方式网络营销总结及体会
  • 微博优惠券网站怎么做互联网推广中心
  • 丽之鑫科技网站后台怎么做谈谈你对互联网营销的认识
  • 广州白云网站建设百度移动权重
  • 网站关键词优化办法百度权重3的网站值多少
  • 手机网站开发需要哪些技术口碑营销的例子
  • 应用商店app下载安装湖南seo技术培训
  • 做电影网站需要什么服务器搜索大全引擎地址
  • 怎么看网站备案百度竞价入口
  • 鞍山人才网官方网站抖音视频排名优化
  • 老域名重新做网站图片seo优化是什么意思
  • 零基础做网站临沂seo公司
  • 常州好一点的网站建设百度站长工具使用方法
  • 营销型网站优点广告竞价推广
  • 动画设计培训中心网店产品seo如何优化
  • 企业网站案例欣赏郑州seo排名优化公司
  • 网站默认模板关键词seo排名怎么选
  • 益阳做网站搜索引擎优化排名关键字广告
  • 辽宁省人民政府令第316号seo排名赚app靠谱吗
  • 91wan网页游戏平台宁波正规seo快速排名公司
  • asp.net 跳转别的网站家电企业网站推广方案
  • 怎样组建企业网站网页设计流程步骤
  • JSP做网站起到的作用整站排名服务
  • 做网站的开发心得迅雷下载磁力天堂
  • c#做的网站怎么上传图片竞价托管推广哪家好
  • 坪山网站建设行业现状seo推广培训中心