LeetCode 228 Summary Ranges

题目描述

Given a sorted integer array without duplicates, return the summary of its ranges.

For example, given [0,1,2,4,5,7], return [“0->2”,”4->5”,”7”].

Credits:
Special thanks to @jianchao.li.fighter for adding this problem and creating all test cases.

代码

    public List<String> summaryRanges(int[] nums) {

        List<String> rt = new ArrayList<String>();

        if (nums == null || nums.length == 0) {
            return rt;
        }

        for (int i = 0; i < nums.length; i++) {
            int st = nums[i];
            int ed = st;

            while (i + 1 < nums.length && nums[i + 1] - ed == 1) {
                i++;
                ed++;
            }

            if (ed == st) {
                rt.add(st + "");
            } else {
                rt.add(st + "->" + ed);
            }
        }

        return rt;
    }
    原文作者:_我们的存在
    原文地址: https://blog.csdn.net/Yano_nankai/article/details/50260025
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞