汇总区间

给定一个无重复元素的有序整数数组,返回数组区间范围的汇总。

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

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

解释: 0,1,2 可组成一个连续的区间; 4,5 可组成一个连续的区间。

function summaryRanges(nums) {
    let arr = []
    if(nums.length == 0){
        return arr
    }
    let pre = nums[0],next = pre
    let toStr = () => {
        if(pre == next){
            arr.push(`${pre}`)
        }else{
            arr.push(`${pre}->${next}`)
        }
    }
    for(let i = 1;i < nums.length;i++){
        let item = nums[i]
        if(item - next == 1){
            next = item
        }else{
            toStr()
            pre = item
            next = item
        }
    }
    toStr()
    return arr
}

Leecode提交通过

posted @ 2020-07-29 20:17  671_MrSix  阅读(103)  评论(0编辑  收藏  举报