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.
代码语言:txt复制 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;
}