[豪の算法奇妙冒险] 代码随想录算法训练营第三十一天 | 56-合并区间、738-单调递增的数字

news/2026/1/18 21:03:39/文章来源:https://www.cnblogs.com/SchwarzShu/p/19499102

代码随想录算法训练营第三十一天 | 56-合并区间、738-单调递增的数字


LeetCode56 合并区间

题目链接:https://leetcode.cn/problems/merge-intervals/description/

文章讲解:https://programmercarl.com/0056.合并区间.html

视频讲解:https://www.bilibili.com/video/BV1wx4y157nD/?vd_source=b989f2b109eb3b17e8178154a7de7a51

​ 重叠区间问题,先排序,让所有的相邻区间尽可能的重叠在一起

​ 按照左边界从小到大排序后,如果 intervals[i][0] <= intervals[i - 1][1] 即 intervals[i] 的左边界 <= intervals[i - 1] 的右边界,则一定有重叠

​ 用合并区间后左边界和右边界,作为一个新的区间加入到result数组即可

image-20260118202332288

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

LeetCode738 单调递增的数字

题目链接:https://leetcode.cn/problems/monotone-increasing-digits/description/

文章讲解:https://programmercarl.com/0738.单调递增的数字.html

视频讲解:https://www.bilibili.com/video/BV1Kv4y1x7tP/?vd_source=b989f2b109eb3b17e8178154a7de7a51

​ 注意设置tag标记从哪里开始往后赋值为9,初始值不落在数组中以防误伤

image-20260118205043759

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1179396.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MATLAB表格数据处理的项目落地经验(避坑+效率提升)

在科研数据分析、工程测试数据处理、工业报表生成等实际项目中,MATLAB的`readtable()`/`writetable()`及`table`对象操作是高频核心技能。我结合近5年的项目经验(如车载传感器数据解析、光伏实验数据处理、工业Excel…

最新论文 | EarthVL: 武大钟燕飞团队提出渐进式理解/生成框架, 从识别到深度理解遥感地物, 提供专业决策建议 - MKT

最新论文 | EarthVL: 武大钟燕飞团队提出渐进式理解/生成框架, 从识别到深度理解遥感地物, 提供专业决策建议https://mp.weixin.qq.com/s/6gVsTTZ7OT_VT5VcGsiDLA

《卷一》人形机器人导论:从机械设计到系统集成

第1篇 人形机器人的发展与基础认知第1章 人形机器人的发展历史、趋势与应用场景1.1 人形机器人的发展历程1.1.1 早期仿人研究到现代机器人1.1.2 ASIMO等标志性里程碑1.1.3 特斯拉、Figure、Unitree的商业化推动1.2 未来趋势与行业需求1.2.1 具身智能推动的产业变革1.2.2…

Flutter × OpenHarmony 跨端开发之汇率转换与汇率卡片展示

文章目录Flutter OpenHarmony 跨端开发之汇率转换与汇率卡片展示前言背景Flutter Harmony OpenHarmony 跨端开发介绍开发核心代码代码解析&#xff1a;心得总结Flutter OpenHarmony 跨端开发之汇率转换与汇率卡片展示 前言 随着全球化经济的发展&#xff0c;汇率的实时查询…

(1-1)人形机器人的发展历史、趋势与应用场景:人形机器人的发展历程

本章首先系统介绍了人形机器人的发展脉络&#xff0c;从早期仿人研究到ASIMO等里程碑事件&#xff0c;再到特斯拉、Figure、宇树等企业推动的商业化进程&#xff0c;勾勒出人形机器人产业的演进全景。然后进一步分析了具身智能、大模型融合背景下的人形机器人发展趋势及其在劳动…

优雅汇率:Flutter × OpenHarmony 跨端汇率转换计算器实现

文章目录优雅汇率&#xff1a;Flutter OpenHarmony 跨端汇率转换计算器实现前言背景Flutter Harmony OpenHarmony 跨端开发介绍开发核心代码构建转换计算器 Widget核心逻辑解析心得总结优雅汇率&#xff1a;Flutter OpenHarmony 跨端汇率转换计算器实现 前言 随着全球经济…

(1-2)人形机器人的发展历史、趋势与应用场景:未来趋势与行业需求

1.2 未来趋势与行业需求随着具身智能、大模型与机器人核心硬件的快速发展&#xff0c;人形机器人正从技术验证阶段迈向面向真实场景的规模化应用阶段。未来的发展趋势不仅体现在智能水平的持续提升&#xff0c;更体现在对劳动力结构、生产方式与服务形态的深刻重塑。在制造业、…

Flutter × OpenHarmony 汇率转换应用中的智能货币选择器实现

文章目录Flutter OpenHarmony 汇率转换应用中的智能货币选择器实现前言背景Flutter OpenHarmony 跨端开发介绍开发核心代码代码解析心得总结Flutter OpenHarmony 汇率转换应用中的智能货币选择器实现 前言 在现代移动应用中&#xff0c;货币转换功能是出境旅游、跨境电商及…

提示工程质量保证体系:如何保证Prompt的一致性?

提示工程质量保证&#xff1a;构建Prompt一致性的系统方法论 元数据框架 标题&#xff1a;提示工程质量保证&#xff1a;构建Prompt一致性的系统方法论 关键词&#xff1a;提示工程, Prompt一致性, 质量保证体系, 语义对齐, 模型输出稳定性, 反馈迭代, 大模型应用 摘要&#xf…

综述北航基于视觉的无人机定位与导航方法研究 - MKT

综述北航基于视觉的无人机定位与导航方法研究主要贡献全面总结了基于视觉的无人机定位与导航技术,包括图像检索和图像匹配两大类定位方法,以及障碍物检测与规避、路径规划两类导航方法,揭示了现有技术的优势和局限。…

AI原生应用持续学习框架对比:TensorFlow vs PyTorch

AI原生应用持续学习框架对比:TensorFlow vs PyTorch 一、引言 (Introduction) 钩子 (The Hook) 你是否遇到过这样的困境? 花费数周训练的图像分类模型,上线3个月后准确率从92%暴跌至75%——原因是用户上传的图片中出现了新的类别(比如原本识别“猫/狗”,现在多了“仓鼠…

(1-3)人形机器人的发展历史、趋势与应用场景:人形机器人关键技术体系总览

1.3 人形机器人关键技术体系总览人形机器人是一种高度复杂的综合系统&#xff0c;其能力水平取决于多学科关键技术的协同程度。本节从系统工程视角出发&#xff0c;对人形机器人核心技术体系进行整体梳理&#xff1a;以机械系统构建类人结构与运动基础&#xff0c;以电气系统与…

求小数点后某一位数字

求小数点后某一位数字分数a/b化为小数后,小数点后第n位的数字是多少? 【输入】 三个正整数a,b,n 相邻两个数之间用单个空格隔开。0<a<b<100,1<=n<=10000 【输出】 一个数字 错解 #include<iost…

大数据领域中 RabbitMQ 的消息压缩技术

大数据场景下RabbitMQ消息压缩实战:从原理到落地的全攻略 摘要/引言 在大数据时代,高吞吐量、大体积消息已成为RabbitMQ的常见挑战:比如电商系统的交易日志(每条10KB+)、物联网的传感器数据(每秒10万条)、数据同步中的全量备份(单条100KB+)。这些场景下,未压缩的消…

AD域控组策略------禁用所有本地账号,只启用Administrator账号并统一重置密码

powershell脚本代码如下【已在Windows7、Windows10、Windows11系统上测试功能正常】保存为*.ps1文件,组策略中调用此脚本,计算机配置------策略------Windows设置------脚本(启动/关机)------启动中引用脚本即可,…

对于溢出数据的处理

对于溢出数据的处理方法一:取模 例:求1992的n次方的末两位数字 #include<iostream> using namespace std; int main() {int a=1,t=0,n;cin>>n;do{++t;a=(a*92)%100;//注意本题只能进行取模运算,因为结果…

道路抛洒物检测数据集1650张VOC+YOLO格式

道路抛洒物检测数据集1650张VOCYOLO格式数据集格式&#xff1a;VOC格式YOLO格式压缩包内含&#xff1a;3个文件夹&#xff0c;分别存储图片、xml、txt文件JPEGImages文件夹中jpg图片总计&#xff1a;1650Annotations文件夹中xml文件总计&#xff1a;1650labels文件夹中txt文件总…

5种空中飞行物数据集3936张VOC+YOLO格式

5种空中飞行物数据集3936张VOCYOLO格式数据集格式&#xff1a;VOC格式YOLO格式压缩包内含&#xff1a;3个文件夹&#xff0c;分别存储图片、xml、txt文件JPEGImages文件夹中jpg图片总计&#xff1a;3936Annotations文件夹中xml文件总计&#xff1a;3936labels文件夹中txt文件总…

顺序表(泛型)

package Data_Structure;import java.util.Scanner;public class SeqList<T> {private int length;static private int MAXSIZE =100;private Object[] data;// 0<=i<=length,允许在末尾的下一个位置插入…

后劲大到离谱 董子健导演首作看完缓了两天!

刚看完《我的朋友安德烈》那晚&#xff0c;我没事&#xff1b;结果第二天上班路上&#xff0c;脑子里突然闪过一个画面&#xff0c;鼻头一酸——坏了&#xff0c;这电影的后劲又上来了&#xff01;董子健第一次当导演&#xff0c;简直是个“隐藏高手”&#xff0c;片子没刻意煽…