给定一个无重复元素的有序整数数组 nums 。
返回 恰好覆盖数组中所有数字 的 最小有序 区间范围列表。也就是说,nums 的每个元素都恰好被某个区间范围所覆盖,并且不存在属于某个范围但不属于 nums 的数字 x 。
列表中的每个区间范围 [a,b] 应该按如下格式输出:
"a->b" ,如果 a != b
"a" ,如果 a == b
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/summary-ranges
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
class Solution: def summaryRanges(self, nums: List[int]) -> List[str]: res=[] i=0 while i <len(nums): if i+1<len(nums)and nums[i]+1==nums[i+1]: t=i#记录下最左边的数字 while i+1<len(nums)and nums[i]+1==nums[i+1]: i+=1#直到找到不相等的数为止 res.append("{}->{}".format(nums[t],nums[i])) else: res.append(str(nums[i]))#如果一开始就不连等,那么久把自己加进去住,注意是字符串。 i+=1 return res