面试经典-28-汇总区间

题目

给定一个 无重复元素 的 有序 整数数组 nums 。

返回 恰好覆盖数组中所有数字 的 最小有序 区间范围列表 。也就是说,nums 的每个元素都恰好被某个区间范围所覆盖,并且不存在属于某个范围但不属于 nums 的数字 x 。

列表中的每个区间范围 [a,b] 应该按如下格式输出:

"a->b" ,如果 a != b

"a" ,如果 a == b

示例 1:

输入:nums = [0,1,2,4,5,7]

输出:["0->2","4->5","7"]

解释:区间范围是:

0,2\] --\> "0-\>2" \[4,5\] --\> "4-\>5" \[7,7\] --\> "7" ## 解 ```java class Solution { public List summaryRanges(int[] nums) { List result = new ArrayList<>(); if(nums.length == 0){ return result; } int start = nums[0]; int end = nums[0]; for (int i = 1; i < nums.length; i++) { if (nums[i - 1] + 1 == nums[i]) { end = nums[i]; } else { if (start == end) { result.add(String.valueOf(start)); } else { result.add(start + "->" + end); } start = nums[i]; end = nums[i]; } } if (start == end) { result.add(String.valueOf(start)); } else { result.add(start + "->" + end); } return result; } } ```

相关推荐
股朋公式网10 分钟前
斩仙飞刀、 通达信飞刀 源码
python·算法
不吃橘子的橘猫10 分钟前
NVIDIA DLI 《Build a Deep Research Agent》学习笔记
开发语言·数据库·笔记·python·学习·算法·ai
Xの哲學24 分钟前
Linux CFS 调度器深度解析
linux·服务器·算法·架构·边缘计算
bedynamic31 分钟前
蚁群算法原理及实现
算法·智能算法
Coovally AI模型快速验证1 小时前
当小龙虾算法遇上YOLO:如何提升太阳能电池缺陷检测精度?
人工智能·深度学习·算法·yolo·目标检测·无人机
吴声子夜歌1 小时前
数据结构——通用树(N叉树)
数据结构
surtr11 小时前
常见排序模板(冒泡排序,希尔排序,堆排序,归并排序,快速排序)
数据结构·算法·贪心算法·排序算法
fengfuyao9852 小时前
经典MUSIC算法程序以及测角精度与阵元间距、阵元数、信噪比、快拍数等的关系
算法
十八岁讨厌编程2 小时前
【算法训练营 · 补充】LeetCode Hot100(下)
算法·leetcode·职场和发展
一路往蓝-Anbo2 小时前
C语言从句柄到对象 (三) —— 抛弃 Malloc:静态对象池与索引句柄的终极形态
c语言·开发语言·数据结构·stm32·单片机·算法