228. Summary Ranges

2018-05-15  本文已影响0人  April63

还是两个指针start和end标注起始位置,要注意坐标不要越界

class Solution(object):
    def summaryRanges(self, nums):
        """
        :type nums: List[int]
        :rtype: List[str]
        """
        if len(nums) == 0:
            return []
        if len(nums) == 1:
            return[str(nums[0])]
        start = 0
        end = 0
        res = []
        for i in range(len(nums)):
            if (i+1) < len(nums) and nums[i+1] == nums[i] + 1:
                end += 1
            else:
                if end - start > 0:
                    temp = str(nums[start]) +"->"+str(nums[end])
                    res.append(temp)
                else:
                    res.append(str(nums[start]))
                if i+1 < len(nums):
                    start = i+1
                    end = i+1
        return res
上一篇 下一篇

猜你喜欢

热点阅读