0
点赞
收藏
分享

微信扫一扫

[220228] Summary Ranges

 

class Solution:
    def summaryRanges(self, nums):

        if not nums:
            return []

        i, j = 0, 0
        res = []

        while j < len(nums) - 1:
            # 连续数字
            if nums[j] + 1 == nums[j + 1]:
                j += 1
            else:
                # 单独一个数字
                if i == j:
                    res.append(str(nums[j]))
                    i += 1
                    j += 1
                # 头尾放进 res
                else:
                    res.append(str(nums[i]) + '->' + str(nums[j]))
                    i, j = j + 1, j + 1
        
        # 退出循环后最后一组
        if i == j:
            res.append(str(nums[j]))
        else:
            res.append(str(nums[i]) + '->' + str(nums[j]))

        return res
举报

相关推荐

0 条评论