class Solution {
public List<String> summaryRanges(int[] nums) {
List<String> list = new ArrayList<>();
int i = 0;
int n = nums.length;
while(i<n){
int low = i;
i++;
//while当不连续时,退出循环.
while(i<n&&nums[i]==nums[i-1]+1){
i++;
}
//此时high需要--
int high = i-1;
//先把low放进去,再根据情况判断连不连high部分
StringBuilder sb = new StringBuilder(Integer.toString(nums[low]));
if(low<high){
sb.append("->");
sb.append(Integer.toString(nums[high]));
}
list.add(sb.toString());
}
return list;
}
}
给定一个无重复元素的有序整数数组 nums 。 返回 恰好覆盖数组中所有数字 的 最小有序 区间范围列表。也就是说,nums 的每个元素都恰好被某个区间范围所覆盖,并且不存在属于某个范围但不属于 n
最新推荐文章于 2022-12-06 13:17:11 发布