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

网站案例响应式中国设计网logo

网站案例响应式,中国设计网logo,wordpress超级开关,推进网站集约化建设代码随想录算法训练营第三十四天 | LeetCode 860. 柠檬水找零、406. 根据身高重建队列、452. 用最少数量的箭引爆气球 文章链接#xff1a;柠檬水找零 根据身高重建队列 用最少数量的箭引爆气球 视频链接#xff1a;柠檬水找零 根据身高重建队列 …代码随想录算法训练营第三十四天 | LeetCode 860. 柠檬水找零、406. 根据身高重建队列、452. 用最少数量的箭引爆气球 文章链接柠檬水找零        根据身高重建队列        用最少数量的箭引爆气球 视频链接柠檬水找零        根据身高重建队列        用最少数量的箭引爆气球 1. LeetCode 860. 柠檬水找零 1.1 思路 情况 1如果客户支付 5 就直接收下即可情况 2如果客户支付 20 就需要 一张 10 和 一张 5 或者 三张 5 来找零情况 3如果客服支付 10 就需要 一张 5 来找零。场景就这三个在情况 1、2 都是固定应对策略而情况 3 是有两种应对方式应该优先使用 一张 10 和 一张 5 来应对因为 10 元只能用来找零这种情况并且 5 更万能如果没有再用 三张 5 来找零局部最优遇到 20 元的情况优先用 105 的方式应对全局最优完成整个账单的找零定义三个变量 five0ten0twenty0twenty 不定义也行for(int bill : bills)遍历即可 1.2 代码 // class Solution {public boolean lemonadeChange(int[] bills) {int five 0;int ten 0;for (int i 0; i bills.length; i) {if (bills[i] 5) {five;} else if (bills[i] 10) {five--;ten;} else if (bills[i] 20) {if (ten 0) {ten--;five--;} else {five - 3;}}if (five 0 || ten 0) return false;}return true;} } 2. LeetCode 406. 根据身高重建队列 2.1 思路 这题思路和135. 分发糖果一样都有两个维度本题是 h 和 k因此像那题一样不能同时考虑不然那一定会顾此失彼先确定一个维度再确定另一个维度。本题先确定哪个呢我们先按照 k 来排序发现我们既没有把 k 确定下来也没有把 h 确定下来因此我们再按 h 来从大到小排序如果 h 相同 k 就从小到大排这种方式起码 h 确定下来了那我们遍历到每个人的时候前面的身高一定是他自己的如果你想他前面有 k 个身高他的话就把他插入到 k 下标的位置即可。由于我们身高是从大到小排序的我们插入的时候是从大到小遍历去找 k 位置插入的后面的一定没有前面高因此插入后并不影响排序最开始先给数组排序按 h 从大到小排序如果 h 相同k 就从小到大排序Java 这里要自己实现定义个二维集合 queue然后将排完序的数组从头开始遍历获得 people[i][1] 的插入位置直接插入到 queue 中即可return queue 即可 Java 里需要转换一下这里不可以做 people 数组上操作因为可能会操作同一个元素因为有可能后面的元素已经插入到前面了原位置还保留着就可能重复操作 2.2 代码 // class Solution {public int[][] reconstructQueue(int[][] people) {// 身高从大到小排身高相同k小的站前面Arrays.sort(people, (a, b) - {if (a[0] b[0]) return a[1] - b[1]; // a - b 是升序排列故在a[0] b[0]的狀況下會根據k值升序排列return b[0] - a[0]; //b - a 是降序排列在a[0] ! b[0]的狀況會根據h值降序排列});LinkedListint[] que new LinkedList();for (int[] p : people) {que.add(p[1],p); //Linkedlist.add(index, value)會將value插入到指定index裡。}return que.toArray(new int[people.length][]);} } 3. LeetCode 452. 用最少数量的箭引爆气球 3.1 思路 本题给的二维数组表示的就是气球的左边界和右边界弓箭是垂直 x 轴往上射的重叠的气球是可以一起射爆的。局部最优重叠的气球尽量在一起用一支弓箭去射全局最优用了最少的弓箭数本题中没有必要把射爆的气球从数组中移除只需要记录弓箭数还有就是如何记录重叠的气球。开始先判断数组的长度如果等于 0 就直接 return 0 即可。然后首先我们要进行排序可以统一按照左边界排序也可以统一按照右边界排序都可以。这里统一按照左边界排序让重叠的气球尽量相邻。定义个 result 记录弓箭数初始化为 1因为上面已经判断 0 气球的情况了起始至少都是有一个气球的后面有需要再额外然后是 for 循环遍历forint i1; ipoint.length; i从 1 开始是因为后面比较是第 i 个和 第 i-1 个比较不重叠的情况排序后如果第 i 个气球的左边界大于第 i-1 个气球的右边界 ifpoint[i][0]point[i-1][1]证明一定是不重叠的就一定需要 result了。重叠的情况因为我们已经是针对左边界进行排序了因此只需要判断右边界即可判断相邻的气球是否重叠了不重叠就是 ifpoint[i][0]point[i-1][1]else 就是重叠了即相当于如果第 i 个气球的左边界小于等于第 i-1 个气球的右边界point[i][0]point[i-1][1]的情况了为什么有“等于号”因为题目描述两个气球如果是相邻的话也是可以一个弓箭射的。现在问题是知道了相邻两个重叠的情况了那和下一个重不重叠呢此时就需要更新我们的右边界两个气球重叠之后它们整体的右边界应该是取两个气球的右边界的最小值为什么是最小值因为如果取最大值用一个弓箭只能射爆右边那个气球了只有取右边界的最小值才能射爆两个气球。point[i][1]Math.min(point[i-1][1],point[i][1])。如果下一个气球的左边界没有大于上面两个气球更新后的右边界说明和上面两个气球不重合则上面两个气球就用一支弓箭这个新的气球就需要另一支弓箭了 3.2 代码 // /*** 时间复杂度 : O(NlogN) 排序需要 O(NlogN) 的复杂度* 空间复杂度 : O(logN) java所使用的内置函数用的是快速排序需要 logN 的空间*/ class Solution {public int findMinArrowShots(int[][] points) {// 根据气球直径的开始坐标从小到大排序// 使用Integer内置比较方法不会溢出Arrays.sort(points, (a, b) - Integer.compare(a[0], b[0]));int count 1; // points 不为空至少需要一支箭for (int i 1; i points.length; i) {if (points[i][0] points[i - 1][1]) { // 气球i和气球i-1不挨着注意这里不是count; // 需要一支箭} else { // 气球i和气球i-1挨着points[i][1] Math.min(points[i][1], points[i - 1][1]); // 更新重叠气球最小右边界}}return count;} }
http://www.dnsts.com.cn/news/156412.html

相关文章:

  • 淄博网站推广公司那些谷歌商店下载
  • 株洲定制型网站建设dede单本小说网站源码
  • 网站服务器能更换吗西安seo培训学校
  • 怎样用wordpress搭建网站黄页114企业号码查询
  • 哪个网站科技新闻好婚庆公司排名前十
  • 网站建设视频教程 百度云 天堂中文在线
  • net做网站遇到的问题电子商务网站建设需要学什么软件
  • 广州移动网站开发电子商务网站建设期末试卷答案
  • 网站页面设置手机版建筑设计网页
  • 大兴智能网站建设哪家好打广告的平台
  • 建营销型网站优化营商环境条例全文
  • 安全狗iis版删了以后 网站打不开wordpress中文备份插件
  • 自己怎么做装修网站宁波品牌策划公司
  • 如何建一个商业网站课程网站建设的财务分析
  • 网站有做货wordpress如何设置关键词和描述
  • 惠州做网站的公司阿里巴巴网站建设销售
  • pc网站建设有什么功能软件平台化
  • 北京网站建设百度排名调查网站怎么做
  • 网站关键词在哪个人网站推广
  • 精通网站建设 百度云广告设计专业技能有哪些
  • wordpress站点运行时间好的网站搭建公司
  • 怎么做论坛社区网站营销型网站设计分析案例
  • 建设银行流水账网站查询仿起点小说网站开发
  • 东莞个人做网站wordpress 封包apk
  • 硅藻泥网站怎么做工程公司排名
  • 八里河风景区网站建设设计概述网站建设开发哪个好学
  • 如何用ftp上传文件到网站网站建设 微信营销
  • 网站推广营销方法网站建设 推广薪资
  • 效能建设网站3d建模师的就业前景
  • 宣传商务型的网站制作网站需要注意的细节