给定一个 无重复元素 的 有序 整数数组 nums 。
区间 [a,b] 是从 a 到 b(包含)的所有整数的集合。
返回 恰好覆盖数组中所有数字 的 最小有序 区间范围列表 。也就是说,nums 的每个元素都恰好被某个区间范围所覆盖,并且不存在属于某个区间但不属于 nums 的数字 x 。
列表中的每个区间范围 [a,b] 应该按如下格式输出:
"a->b",如果a != b"a",如果a == b
function summaryRanges(nums: number[]): string[] {
const result_arr = []
let i=0
while(i<nums.length){
let start =i
while(i+1<nums.length && nums[i+1]===nums[i]+1){
//第一个条件只是为了在最后一次 i+1 时不越过数组
i++
}
if(start ===i) result_arr.push(String(nums[start]))
else result_arr.push(`${nums[start]}->${nums[i]}`)
i++
}
return result_arr
};