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

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出发,向右遍历。每次遇到相邻元素之间的差值大于 1 时,我们就找到了一个区间。遍历完数组之后,就能得到一系列的区间的列表。

在遍历过程中,维护下标 low和 high分别记录区间的起点和终点,对于任何区间都有 low≤high。当得到一个区间时,根据 loww 和 high的值生成区间的字符串表示。

当 low<high时,区间的字符串表示为 ‘‘low→high"。

当 low=high时,区间的字符串表示为 ‘‘low"。

作者:力扣官方题解
 

class Solution {public List<String> summaryRanges(int[] nums) {List<String> ret = new ArrayList<String>();int i = 0;int n = nums.length;while (i < n) {int low = i;i++;while (i < n && nums[i] == nums[i - 1] + 1) {i++;}int high = i - 1;StringBuffer temp = new StringBuffer(Integer.toString(nums[low]));if (low < high) {temp.append("->");temp.append(Integer.toString(nums[high]));}ret.add(temp.toString());}return ret;}
}

http://www.lryc.cn/news/329798.html

相关文章:

  • 【笔记】OpenHarmony设备开发:搭建开发环境(Ubuntu 20.04,VirtualBox 7.0.14)
  • 计算机视觉新巅峰,微软牛津联合提出MVSplat登顶3D重建
  • halcon图像腐蚀
  • neo4j使用详解(六、cypher即时时间函数语法——最全参考)
  • Web 前端性能优化之一:性能模型及网页原理
  • 常用的主流好用的WEB自动化测试工具强烈推荐
  • 分享几个非常不错嵌入式开源项目,一定不要错过
  • Golang基础-4
  • 2024软件设计师备考讲义——UML(统一建模语言)
  • HTML——1.简介、基础、元素
  • Rust 标准库:std::env::args() 函数简介
  • 【Blockchain】GameFi | NFT
  • 【Docker】搭建安全可控的自定义通知推送服务 - Bark
  • 国内IP代理软件电脑版:深入解析与应用指南
  • 面向对象设计之开闭原则
  • 【项目技术介绍篇】若依项目代码文件结构介绍
  • 实现DevOps需要什么?
  • Linux小程序: 手写自己的shell
  • javaSwing租户管理系统
  • cesium实现竖立的圆
  • 汽车电子行业知识:智能汽车电子架构
  • LeetCode146:LRU缓存
  • 【Unity音游制作】你玩过节奏大师吗?(Koreographe插件导入游戏主体)【一】
  • 高效解决Ubuntu Server 18.04.1 LTS 64bit更新gdb8.1.1到gdb12.1
  • 【公示】2023年度青岛市级科技企业孵化器拟认定名单
  • 【软件安装】(十四)Ubuntu22.04安装Psensor硬件监视器
  • 数组合并小程序
  • python练习二
  • 专升本-数字媒体
  • 蓝桥杯算法题-发现环