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

1+官网商城人教版优化设计电子书

1+官网商城,人教版优化设计电子书,免费注册公司邮箱,自己怎么做一元购物网站56.合并区间 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间 。 示例 1: 输入:in…

56.合并区间

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

示例 1:

输入:intervals = [[1,3],[2,6],[8,10],[15,18]]
输出:[[1,6],[8,10],[15,18]]
解释:区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].
示例 2:

输入:intervals = [[1,4],[4,5]]
输出:[[1,5]]
解释:区间 [1,4] 和 [4,5] 可被视为重叠区间。

思路

首先还是按照左边界排序。接下来合并区间。
直接在res里合并。

class Solution {public int[][] merge(int[][] intervals) {Arrays.sort(intervals, new Comparator<int[]>() {@Overridepublic int compare(int[] a, int[] b) {return a[0] - b[0];}});List<int[]> res = new ArrayList<>();res.add(intervals[0]);for (int i = 1; i < intervals.length; i++) {if (res.get(res.size() - 1)[1] >= intervals[i][0]) {res.get(res.size() - 1)[1] = Math.max(res.get(res.size() - 1)[1], intervals[i][1]);} else {res.add(intervals[i]);}}return res.toArray(new int[res.size()][]);}
}

738.单调递增的数字

当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个整数是单调递增的。

给定一个整数 n ,返回 小于或等于 n 的最大数字,且数字呈 单调递增 。

示例 1:

输入: n = 10
输出: 9
示例 2:

输入: n = 1234
输出: 1234
示例 3:

输入: n = 332
输出: 299

思路

一旦出现s[i-1]大于s[i],非单调递增,首先要让s[i-1]–,比如332,3变成2。
从后向前遍历,332->329->299,获得了最前面的-1的位置,然后后面都是9即可。

class Solution {public int monotoneIncreasingDigits(int n) {char[] s = String.valueOf(n).toCharArray();int flag = s.length;for (int i = s.length - 1; i > 0; i--) {if (s[i - 1] > s[i]) {flag = i;s[i - 1]--;}}for (int i = flag; i < s.length; i++) {s[i] = '9';}return Integer.parseInt(new String(s));}
}

968.监控二叉树

给定一个二叉树,我们在树的节点上安装摄像头。

节点上的每个摄影头都可以监视其父对象、自身及其直接子对象。

计算监控树的所有节点所需的最小摄像头数量。
在这里插入图片描述

思路

首先发现摄像头都没有放到叶节点上。
局部最优:叶节点的父节点安摄像头
整体最优:全部摄像头数量最少
所以从下向上,先给叶节点的父节点放摄像头,然后隔两个节点放一个摄像头。
遍历顺序:左右中,从下向上,后序遍历
定义每个节点的状态:

  • 节点无覆盖:0
  • 节点有摄像头:1
  • 节点有覆盖:2
    空节点表示有覆盖,这样就可以不在叶节点放摄像头了。
class Solution {int result;public int minCameraCover(TreeNode root) {result = 0;if (traversal(root) == 0) {// 头节点无覆盖,安装摄像头result++;}return result;}int traversal(TreeNode root) {// 空节点有覆盖,返回2if (root == null) {return 2;}int left = traversal(root.left);int right = traversal(root.right);// 左右节点都有覆盖,此时该节点无覆盖if (left == 2 && right == 2) {return 0;}// 左右节点至少有一个无覆盖,中间节点该放置摄像头if (left == 0 || right == 0) {result++;return 1;}// 左节点或右节点是摄像头,该节点有覆盖if (left == 1 || right == 1) {return 2;}return -1;}
}
http://www.dtcms.com/wzjs/497328.html

相关文章:

  • 做网站婚介简历怎么写今天热点新闻
  • 绍兴网站公司网站制作网上销售都有哪些平台
  • 金山做网站公司玄幻小说排行榜百度风云榜
  • 成都模版网站制作搜索引擎优化技术
  • 怎么看自己做没做网站地图百度推广手机版
  • 济南网站设计开发娃哈哈软文推广
  • 郑州网站公司旅游景区网络营销案例
  • 武汉成交型网站b2b网站平台
  • 品牌网站建设哪个好淘宝指数入口
  • 网站建设报价购物优化营商环境条例全文
  • 昆明建个网站哪家便宜枸橼酸西地那非片
  • 公司做网站需要几个人爱链工具
  • 永年网站建设英文seo是什么意思
  • 桂林旅游网站制作外贸网站平台
  • 做司法亲子鉴定网站在线网站分析工具
  • 安装wordpress软件seo5
  • b站up主怎么接推广大庆网络推广
  • 来广营网站建设百度快照是干什么的
  • 动画制作软件免费黑帽seo排名技术
  • 外贸是做什么的工作内容是什么成都seo工程师
  • 做网站超链接信息流广告投放流程
  • 乐山市建设局网站企业网站建设专业服务
  • 移动网站开发与维护免费广州seo
  • 设计企业品牌网站爱链
  • 北京做网站建设的公司百度收录入口
  • 赶集网发布信息免费南宁正规的seo费用
  • 做网站和易语言百度快照手机版网页版
  • 网站建设方案销售指定关键词seo报价
  • 淘宝网站模板是什么做的代理公司注册
  • 翻译软件翻译英语做网站seo推广营销公司