Java | Leetcode Java题解之第228题汇总区间

题目:

题解:

java 复制代码
class Solution {
    public List<String> summaryRanges(int[] nums) {
        List<String> ans = new ArrayList<>();
        for (int i = 0, j, n = nums.length; i < n; i = j + 1) {
            j = i;
            while (j + 1 < n && nums[j + 1] == nums[j] + 1) {
                ++j;
            }
            ans.add(f(nums, i, j));
        }
        return ans;
    }

    private String f(int[] nums, int i, int j) {
        return i == j ? nums[i] + "" : String.format("%d->%d", nums[i], nums[j]);
    }
}
相关推荐
wuqingshun3141596 小时前
什么是责任链模式,一般用在什么场景?
java·责任链模式
:-)7 小时前
算法-归并排序
java·开发语言·数据结构·算法·排序算法
wuqingshun3141597 小时前
说一下消息队列的模型有哪些?
java
fīɡЙtīиɡ ℡8 小时前
布隆过滤器
java
yaoxin5211238 小时前
462. Java 反射 - 获取声明类与封闭类
java·开发语言·python
wuqingshun31415910 小时前
MYSQL的乐观锁和悲观锁是什么?
java
唐青枫11 小时前
Java SLF4J 实战指南:从日志门面到 Logback、MDC 和链路追踪
java
jvmind_dev12 小时前
Java GC 实战指南(番外篇):被忽视的隐形杀手 —— Class Unloading 如何拖垮 GC
java·后端
An_s12 小时前
机器学习python之识别图中物品信息
java·linux·开发语言
AIGS00112 小时前
跨越语义鸿沟:企业本体语义平台的构建与落地
java·人工智能·python·机器学习·人工智能ai大模型应用