python-leetcode-汇总区间

228. 汇总区间 - 力扣(LeetCode)

python 复制代码
class Solution:
    def summaryRanges(self, nums: List[int]) -> List[str]:
        if not nums:
            return []

        result = []
        start = nums[0]

        for i in range(1, len(nums)):
            if nums[i] != nums[i-1] + 1:  # 发现不连续的情况
                if start == nums[i-1]:
                    result.append(str(start))
                else:
                    result.append(f"{start}->{nums[i-1]}")
                start = nums[i]

        # 最后一个区间
        if start == nums[-1]:
            result.append(str(start))
        else:
            result.append(f"{start}->{nums[-1]}")

        return result
相关推荐
leaves falling5 分钟前
c语言分数求和
算法
Das16 分钟前
【机器学习】01_模型选择与评估
人工智能·算法·机器学习
星轨初途37 分钟前
郑州轻工业大学2025天梯赛解题
c++·经验分享·笔记·算法·链表·剪枝
不忘不弃1 小时前
从字符串中提取数字
数据结构·算法
囊中之锥.2 小时前
《机器学习SVM从零到精通:图解最优超平面与软间隔实战》
算法·机器学习·支持向量机
顽强卖力2 小时前
第二章:什么是数据分析师?
笔记·python·职场和发展·学习方法
必胜刻2 小时前
复原 IP 地址(回溯算法)
tcp/ip·算法·深度优先
YGGP2 小时前
【Golang】LeetCode 5. 最长回文子串
算法·leetcode
hqyjzsb2 小时前
从爱好到专业:AI初学者如何跨越CAIE认证的理想与现实鸿沟
大数据·c语言·人工智能·信息可视化·职场和发展·excel·业界资讯
挖矿大亨3 小时前
C++中的赋值运算符重载
开发语言·c++·算法