228. Summary Ranges

还是两个指针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
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容