summary ranges


Summary Ranges

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public List<String> (int[] nums) {
List<String> ans = new ArrayList<>();
if (nums == null || nums.length == 0)
return ans;
int begin = 0;
for (int i = 1; i <= nums.length; ++i) {
if (i == nums.length || nums[i] != nums[i-1] + 1) {
if (i - 1 == begin) {
ans.add(Integer.toString(nums[begin]));
} else {
StringBuilder sb = new StringBuilder();
sb.append(nums[begin]);
sb.append("->");
sb.append(nums[i - 1]);
ans.add(sb.toString());
}
begin = i;
}
}
return ans;
}