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"].
解题思路:
JAVA实现如下:
public List<String> summaryRanges(int[] nums) { List<String> list = new ArrayList<String>(); if (nums.length == 0) return list; int left = nums[0], index = nums[0]; for (int i = 1; i < nums.length; i++) { if (index == nums[i] - 1) index++; else if (index == left) { list.add(index + ""); left = nums[i]; index = nums[i]; } else { list.add(left + "->" + index); left = nums[i]; index = nums[i]; } } if (index == left) list.add(index + ""); else list.add(left + "->" + index); return list; }
时间: 2024-10-13 08:09:33