【LeetCode:228. 汇总区间 | 区间】

|-----------|
| 🚀 算法题 🚀 |

🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀
🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨
🌲 作者简介:硕风和炜,CSDN-Java领域新星创作者🏆,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享💎💎💎
🌲 恭喜你发现一枚宝藏博主,赶快收入囊中吧🌻
🌲 人生如棋,我愿为卒,行动虽慢,可谁曾见我后退一步?🎯🎯

|-----------|
| 🚀 算法题 🚀 |

🍔 目录

    • [🚩 题目链接](#🚩 题目链接)
    • [⛲ 题目描述](#⛲ 题目描述)
    • [🌟 求解思路&实现代码&运行结果](#🌟 求解思路&实现代码&运行结果)
      • [⚡ 区间](#⚡ 区间)
        • [🥦 求解思路](#🥦 求解思路)
        • [🥦 实现代码](#🥦 实现代码)
        • [🥦 运行结果](#🥦 运行结果)
    • [💬 共勉](#💬 共勉)

🚩 题目链接

⛲ 题目描述

给定一个 无重复元素 的 有序 整数数组 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" 示例 2: 输入:nums = \[0,2,3,4,6,8,9

输出:["0","2->4","6","8->9"]

解释:区间范围是:

0,0\] --\> "0" \[2,4\] --\> "2-\>4" \[6,6\] --\> "6" \[8,9\] --\> "8-\>9" 提示: 0 \<= nums.length \<= 20 -231 \<= nums\[i\] \<= 231 - 1 nums 中的所有值都 互不相同 nums 按升序排列 ### 🌟 求解思路\&实现代码\&运行结果 *** ** * ** *** #### ⚡ 区间 ##### 🥦 求解思路 1. 题目需要我们去找到每个区间开始位置以及结束的位置,具体的判断逻辑是nums\[cur\] + 1 == nums\[cur+1\]。如果满足,就继续,如果不满足,就结束。然后,根据题目的要求,收集最终的答案并返回。 2. 实现代码如下所示: ##### 🥦 实现代码 ```java class Solution { public List summaryRanges(int[] nums) { List ans = new ArrayList<>(); int n = nums.length; for (int i = 0; i < n; i++) { int start = i; while (start < n - 1 && nums[start] + 1 == nums[start + 1]) { start++; } if (start == i) { ans.add(String.valueOf(nums[i])); } else { ans.add(nums[i] + "->" + nums[start]); } i = start; } return ans; } } ``` ##### 🥦 运行结果 ![在这里插入图片描述](https://file.jishuzhan.net/article/1743893359350517762/e2b68f61a5507c99b772b6653deda595.webp) *** ** * ** *** ### 💬 共勉 |----------------------------------| | 最后,我想和大家分享一句一直激励我的座右铭,希望可以与大家共勉! | ![在这里插入图片描述](https://file.jishuzhan.net/article/1743893359350517762/cfaf71b1be420112e9a5d889d4133616.webp) ![在这里插入图片描述](https://file.jishuzhan.net/article/1743893359350517762/1fef9f4e58e292caa82fee193fe2e5d1.webp)

相关推荐
A阳俊yi19 分钟前
Spring Boot日志配置
java·spring boot·后端
pystraf19 分钟前
UOJ 228 基础数据结构练习题 Solution
数据结构·c++·算法·线段树
苹果酱056719 分钟前
2020-06-23 暑期学习日更计划(机器学习入门之路(资源汇总)+概率论)
java·vue.js·spring boot·mysql·课程设计
花生了什么树lll27 分钟前
面试中被问到过的前端八股(四)
前端·面试
海底火旺28 分钟前
破解二维矩阵搜索难题:从暴力到最优的算法之旅
javascript·算法·面试
echo17542544 分钟前
Apipost免费版、企业版和私有化部署详解
java
异常君1 小时前
Java 高并发编程:等值判断的隐患与如何精确控制线程状态
java·后端·代码规范
异常君1 小时前
Java 日期处理:SimpleDateFormat 线程安全问题及解决方案
java·后端·代码规范
都叫我大帅哥1 小时前
Spring AI中的ChatClient:从入门到精通,一篇搞定!
java·spring·ai编程
都叫我大帅哥1 小时前
《@SpringBootApplication:Spring Boot的"一键启动"按钮,还是程序员的"免死金牌"?》
java·后端·spring