leetcode:汇总区间

news2024/11/14 11:56:44

 题目:     

        给定一个无重复元素有序整数数组nums。返回恰好覆盖数组中所有数字最小有序区间范围列表 。也就是说,nums的每个元素都恰好被某个区间范围所覆盖,并且不存在属于某个范围但不属于nums的数字X。列表中的每个区间范围[a,b]应该按如下格式输出:

  • "a->b",如果a != b
  • "a",如果a == b

示例 :

输入

输出

解释
nums = [0,1,2,4,5,7]
["0->2","4->5","7"]
区间范围是:
[0,2] --> "0->2"
[4,5] --> "4->5"
[7,7] --> "7"

提示:

  • 0<=nums.length<=20
  • -2^{31}<=nums[i]<=2^{31}-1
  • nums按升序排列
  • nums中的所有值都互不相同

相关标签:数组

题解:

        我们从数组的位置0出发,向右遍历。每次遇到相邻元素之间的差值等于1时,记录数据至临时列表,当差值不等于1时,我们就找到了一个区间。遍历完数组之后,就能得到一系列的区间的列表。[['0'], ['2', '3', '4'], ['6'], ['8', '9']]

        之后在遍历大列表,修改输出效果:['0', '2->4', '6', '8->9']

代码:Python

nums = [0, 2, 3, 4, 6, 8, 9]


def leetcode():
    if nums == []:
        return nums
    res, ans, j = list(), list(), nums[0]
    for i in nums:
        if i == j:
            ans.append(str(i))
        else:
            res.append(ans)
            ans = [str(i)]
        j = i + 1
    res.append(ans)
    print(res)  # [['0'], ['2', '3', '4'], ['6'], ['8', '9']]
    for i in range(len(res)):
        if res[i][0] == res[i][-1]:
            res[i] = res[i][0]
        else:
            res[i] = res[i][0] + '->' + res[i][-1]
    return res


if __name__ == '__main__':
    res = leetcode()
    print(res)  # ['0', '2->4', '6', '8->9']

总结:

题目内容来源于leetcode链接:汇总区间

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1981351.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

简单的docker学习 第2章 docker引擎

第2章docker引擎 2.1Docker 引擎发展历程 2.1.1 首发版本架构 Docker 在首次发布时&#xff0c;其引擎由两个核心组件构成&#xff1a;LXC&#xff08;Linux Container&#xff09;与 Docker Daemon。不过&#xff0c;该架构依赖于 LXC&#xff0c;使得 Docker 存在严重的问…

人力资源杂志人力资源杂志社人力资源编辑部2024年第13期目录

看法_总编随笔 学会退步 齐向宇; 1 看法_热点聚焦 数说 7 司事 9 看法_热点聚焦_翻转 话题 “霸总”发言遭吐槽对职场年轻人多些体谅 8 看法_视界《人力资源》投稿&#xff1a;cn7kantougao163.com 养老保险改革及其对人事工作的启示 赵梓安; 12-13 做…

潘展乐速度!滴滴无车赔,叫车就是快

8月5日&#xff0c;滴滴网约车“快”乐大使潘展乐在男子4x100米混合泳接力比赛中以45秒92的优异成绩在最后一棒反超&#xff0c;中国队夺得金牌&#xff01;恭喜潘展乐在本届比赛中和队友一起站上冠军的领奖台&#xff0c;用团队金牌为自己庆生&#xff01; 为进一步提升用户叫…

三级等保测评如何顺利通过

三级等保认证&#xff0c;作为中国信息安全等级保护制度中的高级别认证&#xff0c;其标准之高、要求之严&#xff0c;在国内信息安全领域内堪称顶尖。根据《信息系统安全等级保护基本要求》&#xff0c;三级等保的测评内容覆盖了等级保护安全技术要求和安全管理要求的多个层面…

android13 删除兼容性警告窗口 deprecation warning 去除弃用警告

总纲 android13 rom 开发总纲说明 目录 1.前言 2.情况 3.问题分析 4.代码更改 5.编译测试 6.彩蛋 1.前言 在 Android 13 中,为了提高用户体验和应用的兼容性,系统引入了一些新的隐私和安全特性。这些特性可能会影响旧版应用的行为,因此当用户运行可能不完全兼容 An…

【HarmonyOS NEXT星河版开发学习】小型测试案例01-今日头条置顶练习

个人主页→VON 收录专栏→鸿蒙开发小型案例总结​​​​​ 基础语法部分会发布于github 和 gitee上面 ​ 前言 本系列可能是博客首发&#xff0c;鸿蒙开发星河版是一个全新的版本&#xff0c;由于参考视频较少鸿蒙开发不被重视导致csdn上面并没有全套的学习路线&#xff0c;…

6款免费版文章生成器,为你的创作提供无限可能

在这个信息发展迅速的时代&#xff0c;创作者们常常陷入时间和灵感的困境中。为了应对这一挑战&#xff0c;人工智能技术为我们提供了一种全新的解决方案——文章生成器。在这些文章生成器中可以帮助我们快速生成高质量的内容&#xff0c;为我们的创作提供无限可能。在本文中&a…

json文件格式

json文件格式 格式介绍1格式介绍2格式3 格式介绍1 格式介绍2 格式3 参考地址

全自动真空拌馅机 肠类肉丸类馅料搅拌机:

拌馅机&#xff0c;作为现代厨房与食品加工行业不可或缺的利器&#xff0c;其优点繁多&#xff0c;宛如烹饪艺术中的魔术师&#xff0c;为食材的融合与美味的创造开辟了新的维度。 首先&#xff0c;拌馅机以其高效均匀的搅拌能力著称&#xff0c;能够瞬间将肉类、蔬菜、调料等多…

微信小程序 - 自定义计数器 - 优化(键盘输入校验)

微信小程序通过自定义组件&#xff0c;实现计数器值的增加、减少、清零、最大最小值限定、禁用等操作。通过按钮事件触发方式&#xff0c;更新计数器的值&#xff0c;并修改相关联的其它变量。通过提升用户体验&#xff0c;对计数器进行优化设计&#xff0c;使用户操作更加便捷…

亚马逊测评:提升产品信誉与销量的关键

在亚马逊这样竞争激烈的环境中。通过有效的测评&#xff0c;卖家可以轻松为自己的产品添加评论、提高排名&#xff0c;进而打造出优质的产品。然而&#xff0c;亚马逊测评并不等同于刷单。今天&#xff0c;将深入探讨亚马逊测评的本质、与刷单的区别&#xff0c;以及如何在这个…

新能源车燃料和动力电池及系统应用概述(上)

随着化石能源的日益消耗和对环保的逐渐重视&#xff0c;利用电能取代化石能源作为动力的电动汽车受到了世界各国的关注和大力研发。电池技术作为电动汽车的核心和瓶颈&#xff0c;是电动汽车研究的重点和热点方向&#xff0c;也是关系到新能源汽车成本、续航里程、安全性及使用…

【LLM大模型】一文掌握Prompt:万能框架+优化技巧+常用指标

随着大模型在2023年横空出世&#xff0c;“Prompt 工程” 应运而生&#xff0c;作为用好大模型最重要的武器&#xff0c;Prompt 的好坏对模型效果有着决定性的影响。然而&#xff0c;网络上大量相关文章多是罗列“Prompt 工程” 中的若干技巧&#xff0c;少有体系化的总结&…

gym/Gymnasium强化学习玩推箱子游戏

gym/Gymnasium强化学习玩推箱子游戏 gym 框架 源码 https://github.com/openai/gym 文档 https://www.gymlibrary.dev/ 自 2021 年以来一直维护 Gym 的团队已将所有未来的开发转移到 Gymnasium&#xff0c;这是 Gym 的替代品&#xff08;将 gymnasium 导入为 gym&#xff09;…

k8s工作负载控制器--DaemonSet

文章目录 一、概述二、适用场景三、基本操作1、官网的DaemonSet资源清单2、字段解释3、编写DaemonSet资源清单4、基于yaml创建DaemonSet5、注意点5.1、必须字段5.2、DaemonSet 对象的名称5.3、.spec.selector 与 .spec.template.metadata.labels之间的关系 6、查看DaemonSet6.1…

主成分分析和线性判别分析

主成分分析 (PCA) PCA 是一种线性降维方法&#xff0c;通过投影到主成分空间&#xff0c;尽可能保留数据的方差。 原理 PCA 通过寻找数据投影后方差最大的方向&#xff0c;主成分是这些方向上的正交向量。 公式推理 对数据中心化&#xff1a; 其中&#xff0c;μ 是数据的…

姿态矫正app-不良坐姿语音提示

“让爷康康”是一款应用于安卓平台的手机应用&#xff0c;可以实时监测不良坐姿并给出语音提示。本项目主要基于 [Tensorflow Lite 官方示例 - 姿态估计] 文件结构 ├───android │ ├───app │ │ └───src │ └───gradle ├───doc_images ├───…

科普文:JUC系列之Java中7种阻塞队列DelayQueue用法

阻塞队列DelayQueue是一种无界阻塞队列&#xff0c;‌用于放置实现了Delayed接口的对象。‌这些对象只能在其到期时才能从队列中取走&#xff0c;‌这种队列是有序的&#xff0c;‌即队头对象的延迟到期时间最长。‌如果没有任何延迟到期的对象&#xff0c;‌那么就不会有任何头…

示例:在ML.NET中应用Model Builder模型生成器构建图片对象检测模型

一、目的&#xff1a;ML.NET 是一个开源且跨平台的机器学习框架&#xff0c;专为 .NET 开发人员设计。它允许你在 .NET 应用程序中构建、训练和部署机器学习模型&#xff0c;而无需离开 .NET 生态系统。ML.NET 支持多种机器学习任务&#xff0c;包括分类、回归、聚类、异常检测…

五、栈与队列(2)

五、栈与队列&#xff08;2&#xff09; [150. 逆波兰表达式求值 ](https://leetcode.cn/problems/evaluate-reverse-polish-notation/description/)[239. 滑动窗口最大值 ](https://leetcode.cn/problems/sliding-window-maximum/description/)[347.前 K 个高频元素 ](https:/…