LeetCode 228 Javascript 汇总区间

371 阅读1分钟
/**
 * @param {number[]} nums
 * @return {string[]}
 */
var summaryRanges = function(nums) {
    let len = nums.length;
    if (!len) {
        return [];
    }
    let res = [];
    for (let i = 0; i < len; ++i) {
        let k = i;
        while((k < len - 1) && (nums[k + 1] === nums[k] + 1)) {
            k++;
        }
        if (k === i) {
            res.push(`${nums[i]}`)
        } else {
            res.push(`${nums[i]}->${nums[k]}`);
            i = k;
        }
    }
    return res;
};

简单明了 没啥效率