当前位置: 首页 > article >正文

day25-数据结构力扣

134. 加油站题目链接134. 加油站 - 力扣LeetCode思路虽然这个题看起来有点抽象但是你仔细看一下他的示例其实能明白设每一站的净油量diff[i] gas[i] - cost[i]总判断如果所有diff加起来 0 →总油不够跑一圈直接返回 -1。贪心找起点从某个起点出发一路累加油箱油量一旦油箱 0→ 说明从当前起点到这一站所有点都不能做起点→ 直接把起点换成下一站油箱清空重新算题目保证有解就唯一最后剩下的起点就是答案。提交total 整个旅途总共带的油够不够全程消耗不够 → 直接放弃curr 你现在车里还有多少油半路没油了 → 换个起点重新开from typing import List class Solution: def canCompleteCircuit(self, gas: List[int], cost: List[int]) - int: n len(gas) total 0 # 总净油量判断能否跑完一圈 curr 0 # 当前油箱油量 start 0 # 记录起点 for i in range(n): diff gas[i] - cost[i] total diff curr diff # 当前油不够说明 [start, i] 都不能做起点 if curr 0: start i 1 # 起点换成下一站 curr 0 # 油箱清空 # 总油 0 才有解否则 -1 return start if total 0 else -1135. 分发糖果题目链接135. 分发糖果 - 力扣LeetCode思路class Solution: def candy(self, ratings: List[int]) - int: nlen(ratings) nums[1]*n for i in range(n-1): if ratings[i]ratings[i1]: nums[i]1 elif ratings[i]ratings[i1]: nums[i1]1 else: continue return sum(nums)我是这样写的代码但是题解说要两次遍历我完全理解不了通过18个用例纯没事找事这个题思路只遍历一次只能处理 “一对邻居”但题目需要 “连续一串” 都满足规则。我知道遍历一次是错的但是为什么要遍历两次还是不太懂要满足左右两边都要比必须遍历两次第一次左 → 右只保证如果右边 左边→ 右边糖果 左边糖果 1第二次右 → 左只保证如果左边 右边→ 左边糖果 右边糖果 1最后每个位置取最大值这样左右两边的规则都满足。提交class Solution: def candy(self, ratings: List[int]) - int: n len(ratings) nums [1] * n # 每人至少1颗 # 左→右保证右边 左边时糖更多 for i in range(1, n): if ratings[i] ratings[i-1]: nums[i] nums[i-1] 1 # 右→左保证左边 右边时糖更多 for i in range(n-2, -1, -1): if ratings[i] ratings[i1]: nums[i] max(nums[i], nums[i1] 1) return sum(nums)860.柠檬水找零题目链接860. 柠檬水找零 - 力扣LeetCode思路这个题还是可以理解但是怎么做如果现实生活让我给找零钱就直接给能不能维护一个数组就是我现在手上有的钱然后一个一个加入判断是否可以找零class Solution: def lemonadeChange(self, bills: List[int]) - bool: nlen(bills) nums[] for i in range(n): if bills[i]5: nums.append(bills[i]) elif bills[i]10: count5nums.count(5) if count51: return False else: nums.remove(5) nums.append(10) else: count5nums.count(5) count10nums.count(10) if count53: nums.remove(5) nums.remove(5) nums.remove(5) nums.append(20) elif count101 and count51: nums.remove(10) nums.remove(5) nums.append(20) else: return False return True通过了55个样例还是写的有点复杂思路只需要记录 5 美元、10 美元的数量收到 5 美元不用找零5 的数量 1收到 10 美元必须找 5 美元5 的数量 -110 1收到 20 美元优先找 105没有再找 3 张 5因为 5 美元更通用要省着用任何一步找不开 → 直接 return False提交from typing import List class Solution: def lemonadeChange(self, bills: List[int]) - bool: five 0 # 只记5美元数量 ten 0 # 只记10美元数量 for bill in bills: if bill 5: five 1 elif bill 10: if five 0: # 必须找5美元 return False five - 1 ten 1 else: # 20美元 # 优先用 105 找零贪心 if ten 0 and five 0: ten - 1 five - 1 elif five 3: # 不行再用3张5 five - 3 else: # 都不行 return False return True406.根据身高重建队列题目链接406. 根据身高重建队列 - 力扣LeetCode思路怎么说光是看题就消耗了很多力气排序规则身高高的排前面降序身高一样k 小的排前面升序构造规则按排好的顺序把每个人插入到结果的第 k 个位置因为高的人已经先放好了矮的人插进去不会影响别人的 k 值高的人先放好后面插入矮个子不会改变高个子的 k 值矮个子直接插到第 k 位前面正好有 k 个比他高 / 等高的人提交from typing import List class Solution: def reconstructQueue(self, people: List[List[int]]) - List[List[int]]: # 排序身高从高到低身高相同 k 小的在前 people.sort(keylambda x: (-x[0], x[1])) res [] # 按 k 的位置插入 for p in people: res.insert(p[1], p) return res

相关文章:

day25-数据结构力扣

134. 加油站 题目链接134. 加油站 - 力扣&#xff08;LeetCode&#xff09; 思路 虽然这个题看起来有点抽象 但是你仔细看一下他的示例&#xff0c;其实能明白 设每一站的净油量&#xff1a;diff[i] gas[i] - cost[i] 总判断如果所有 diff 加起来 < 0 → 总油不够跑一…...

【会议征稿通知 | 华东交通大学主办 | IEEE出版 | EI 、Scopus稳定检索】第二届智慧综合能源系统工程国际学术会议(IIESE 2026)

第二届智慧综合能源系统工程国际学术会议&#xff08;IIESE 2026&#xff09; 2026 2nd International Conference on Intelligent Integrated Energy Systems Engineering 2026年5月15-17日 | 中国南昌 会议官网&#xff1a;www.iiese.net 截稿时间&#xff1a;见官网&…...

【会议征稿通知 | 广州计算机学会主办 | IEEE出版 | EI 、Scopus稳定检索】

2026年信息安全&#xff0c;隐私保护与人工智能国际学术会议&#xff08;ISPPAI 2026&#xff09; 2026 International Conference on Information Security, Privacy Protection and Artificial Intelligence&#xff08;ISPPAI 2026&#xff09; 2026年5月15-17日 | 中国-广…...

3步实现网页到Figma设计的高效转换:HTML转Figma工具实战指南

3步实现网页到Figma设计的高效转换&#xff1a;HTML转Figma工具实战指南 【免费下载链接】figma-html Convert any website to editable Figma designs 项目地址: https://gitcode.com/gh_mirrors/fi/figma-html 在当今的Web开发与设计工作流中&#xff0c;设计师与开发…...

CXPatcher:智能升级CrossOver依赖,一键提升游戏兼容性的高效工具

CXPatcher&#xff1a;智能升级CrossOver依赖&#xff0c;一键提升游戏兼容性的高效工具 【免费下载链接】CXPatcher A patcher to upgrade Crossover dependencies and improve compatibility 项目地址: https://gitcode.com/gh_mirrors/cx/CXPatcher 你是否曾经为Cros…...

OpenWrt在VMWare中的安装与配置全攻略

1. 为什么要在VMWare中运行OpenWrt&#xff1f; 很多刚接触软路由的朋友可能都会有这个疑问&#xff1a;为什么要在虚拟机里折腾OpenWrt&#xff1f;直接买个路由器刷机不香吗&#xff1f;其实这里面大有讲究。我最早接触OpenWrt就是在VMWare里&#xff0c;当时纯粹是为了测试一…...

Quartus II 13.0入门指南:VHDL仿真全流程解析

1. Quartus II 13.0初体验&#xff1a;从安装到第一个VHDL项目 第一次打开Quartus II 13.0时&#xff0c;那个深蓝色界面可能会让你有点懵。别担心&#xff0c;我刚开始用的时候也这样&#xff0c;现在让我带你一步步走完整个流程。首先确保你的电脑满足这些基本配置&#xff1…...

无人机框架市场最新数据:规模达16.95亿元,产业配套加速成型

据恒州诚思调研统计&#xff0c;2025年全球无人机框架市场规模约16.95亿元&#xff0c;预计未来将持续保持平稳增长态势&#xff0c;到2032年市场规模将接近25.29亿元&#xff0c;未来六年复合年均增长率&#xff08;CAGR&#xff09;为5.9%。在无人机产业蓬勃发展的当下&#…...

遗传算法与免疫算法求解物流配送中心选址问题,附详细注释与源码(Matlab编写

遗传算法 求解物流配送中心选址问题 源码详细注释(Matlab编写) 有两种解决选址问题代码&#xff0c;说明如下&#xff1a; 代码一&#xff1a;免疫算法物流配送中心选址 模型应用场景&#xff1a; 1.配送中心能够配送的总量≥各揽收站需求之和 2.一个配送中心可为多个揽收站配送…...

基于二阶锥规划的Cplex配电网重构多时段动态最优潮流研究及实践应用

cplex配电网重构多时段&#xff0c;二阶锥规划 参考文献名&#xff1a;主动配电网最优潮流研究及其应用实例&#xff08;中国电机工程学报&#xff09; 最优潮流研究在配电网规划运行中不可或缺 &#xff0c;且在大量分布式能源接入的主动配电网环境下尤 为重要 。 传统 的启发…...

Python面试必备:30道高频笔试题深度解析与实战演练

1. Python基础概念高频考点解析 Python作为一门解释型语言&#xff0c;其基础概念是面试官最喜欢考察的"试金石"。我在面试新人时发现&#xff0c;超过60%的候选人会在基础题上栽跟头。让我们先看几个典型问题&#xff1a; 列表与元组的本质区别 不只是可变性这么简单…...

[具身智能-372]:具身智能大脑、小脑、肢体各自的功能分工、各自的技术栈、各自的难点

具身智能的“大脑-小脑-肢体”架构是工程界借鉴人类神经运动系统提出的分层解耦设计范式。该架构并非严格生物学复刻&#xff0c;而是为了在复杂系统中实现“认知-控制-执行”的模块化管理与协同优化。以下从功能分工、技术栈与核心难点三个维度进行系统拆解&#xff1a;&#…...

【ROS2实战笔记-4】Gazebo:从通信桥接到性能瓶颈相关技术梳理

Gazebo是ROS2生态中应用最广泛的仿真环境&#xff0c;但多数开发者只用到了它的基础功能。这篇文章不谈怎么添加传感器、怎么写URDF&#xff0c;而是聊一些在使用Gazebo过程中容易被忽略的技术细节——那些理解了能省下大量调试时间、不理解会反复踩坑的事情。一、通信桥接&…...

【ROS2实战笔记-3】RViz2图形底层与调试暗坑

RViz2是ROS2生态中使用频率最高的工具之一&#xff0c;每天都有大量开发者打开它、添加Display、调整视角&#xff0c;然后开始调试算法。但很少有人真正关心它的图形架构、渲染瓶颈&#xff0c;以及那些隐藏在配置文件里的行为逻辑。这篇文章不打算讲怎么添加一个Image Displa…...

OpenHarmony开发必备:巧用DevEco Studio的PCID导入,快速搞定新设备适配

OpenHarmony设备适配实战&#xff1a;PCID导入与SysCap深度解析 当拿到一台全新的智能车载中控或智能家居面板时&#xff0c;开发者常会遇到这样的困境&#xff1a;设备厂商提供的SDK文档晦涩难懂&#xff0c;而项目工期又迫在眉睫。上周我就遇到某车企定制车机的适配需求&…...

从视频到词语:基于Yolov5与3DResNet-GRU的端到端唇语识别实战

1. 唇语识别技术入门&#xff1a;为什么选择Yolov53DResNet-GRU组合&#xff1f; 想象一下这样的场景&#xff1a;你在嘈杂的酒吧里&#xff0c;朋友对你说了句话但完全听不清。这时候你可能会下意识地盯着对方的嘴唇&#xff0c;试图通过嘴型变化理解意思。这就是人类天然的&q…...

古瑞瓦特光伏逆变器资料大解析:8-10KW与5-8KW型号电路图及程序应用概览

光伏逆变器资料 8-10KW 5-8KW古瑞瓦特光伏逆变器电 路图、光伏逆变器资料 古瑞瓦特的5&#xff0d;10KW资料逆变器带程序光伏逆变器资料 8-10KW 5-8KW古瑞瓦特光伏逆变器电 路图、光伏逆变器资料 古瑞瓦特的5&#xff0d;10KW资料逆变器带程序 古瑞瓦特逆变器资料,古瑞瓦特光并…...

非科班生如何用Trae IDE在数学建模比赛中逆袭?Python实战经验分享

非科班生如何用Trae IDE在数学建模比赛中逆袭&#xff1f;Python实战经验分享 数学建模比赛向来是跨学科竞技的舞台&#xff0c;但编程这道门槛让不少非计算机专业的学生望而却步。去年带队参加统计建模大赛时&#xff0c;我们三个经管专业的大一新生就面临这样的困境——团队里…...

从玩具车到真车:阿克曼模型在ROS与自动驾驶仿真中的配置避坑指南

从玩具车到真车&#xff1a;阿克曼模型在ROS与自动驾驶仿真中的配置避坑指南 当你第一次在Gazebo里加载那辆精致的仿真车模型时&#xff0c;满心期待它能在虚拟世界里优雅地转弯&#xff0c;结果却发现它要么像醉汉一样走S形路线&#xff0c;要么干脆表演原地陀螺——恭喜你&am…...

医学图像处理(三)ABIDE数据集实战:从下载到预处理流程解析

1. ABIDE数据集&#xff1a;自闭症脑成像研究的金钥匙 第一次接触ABIDE数据集时&#xff0c;我正为一个自闭症儿童脑功能连接项目犯愁。这个由纽约大学医学院牵头、全球17个研究中心共同构建的宝藏&#xff0c;包含了1112名受试者&#xff08;539名自闭症患者573名正常对照&…...

SecGPT-14B入门教程:网络安全工程师必学的14B专用大模型调用与结果解读方法

SecGPT-14B入门教程&#xff1a;网络安全工程师必学的14B专用大模型调用与结果解读方法 1. 引言 如果你是网络安全工程师、渗透测试人员&#xff0c;或者对安全分析感兴趣&#xff0c;那你一定遇到过这样的场景&#xff1a;面对海量的日志&#xff0c;需要快速定位攻击线索&a…...

TL431实战指南:从基础参数到精密稳压电路设计

1. TL431到底是什么&#xff1f;为什么工程师都爱用它&#xff1f; 第一次接触TL431时&#xff0c;我也被这个三脚小东西搞懵了。它长得像普通三极管&#xff0c;但 datasheet 上写的却是"可编程精密稳压源"。简单来说&#xff0c;TL431就是个会"自动调节"…...

Cursor Pro终极破解教程:免费解锁AI编程助手完整指南

Cursor Pro终极破解教程&#xff1a;免费解锁AI编程助手完整指南 【免费下载链接】cursor-free-vip [Support 0.45]&#xff08;Multi Language 多语言&#xff09;自动注册 Cursor Ai &#xff0c;自动重置机器ID &#xff0c; 免费升级使用Pro 功能: Youve reached your tria…...

Ostrakon-VL-8B效果展示:多图对比自动标注卫生差异点并生成整改清单

Ostrakon-VL-8B效果展示&#xff1a;多图对比自动标注卫生差异点并生成整改清单 1. 引言&#xff1a;当AI成为你的“卫生巡检员” 想象一下这个场景&#xff1a;你是一家连锁餐饮或零售企业的区域经理&#xff0c;手下管理着十几家门店。每周&#xff0c;你都需要花大量时间翻…...

Ubuntu 20.04下编译Ceres 2.2.0,手把手解决CUDA路径和依赖问题

Ubuntu 20.04下Ceres 2.2.0编译实战&#xff1a;从CUDA路径配置到依赖问题全解析 在机器人SLAM、三维重建和计算机视觉领域&#xff0c;Ceres Solver作为非线性优化库的标杆工具&#xff0c;其GPU加速能力直接影响大规模优化问题的求解效率。本文将带您深入解决Ubuntu 20.04环境…...

ESPript 3.0实战指南:从多序列比到出版级可视化

1. ESPript 3.0入门&#xff1a;为什么科研人员离不开它 第一次接触ESPript是在读博期间&#xff0c;当时导师指着文献里一张色彩斑斓的多序列比对图说&#xff1a;"这种专业图表就是用ESPript做的"。作为生物信息学领域的"老牌神器"&#xff0c;ESPript 3…...

Ubuntu 22.04蓝牙开关秒关?别慌,用dmesg揪出Intel固件缺失的元凶

Ubuntu 22.04蓝牙故障排查指南&#xff1a;从日志分析到固件修复 当你兴冲冲地想在Ubuntu 22.04上连接蓝牙耳机&#xff0c;却发现开关像被施了魔法一样秒关&#xff0c;这种挫败感我太熟悉了。作为一名长期与Linux硬件问题斗智斗勇的老兵&#xff0c;我发现这类问题往往不是系…...

从匿名飞控换到PIXhawk 4,我踩过的坑和避坑指南(附完整ROS2配置流程)

从匿名飞控迁移到PIXhawk 4的实战指南&#xff1a;ROS2环境配置与避坑手册 当无人机开发者从匿名飞控转向PIXhawk 4时&#xff0c;硬件架构、软件生态和开发流程的差异常常带来意料之外的挑战。本文将分享我在Jetson Orin Nano&#xff08;Ubuntu 22.04&#xff09;平台上&…...

深入解读ARKit那51个BlendShape:如何让你的3D数字人表情更自然、更专业?

深入解读ARKit那51个BlendShape&#xff1a;如何让你的3D数字人表情更自然、更专业&#xff1f; 在3D数字人制作领域&#xff0c;面部表情的自然度往往是区分业余作品与专业作品的关键。许多创作者能够实现基础的面部动画&#xff0c;却常常陷入"表情僵硬"的困境——…...

Docker Compose部署MinIO对象存储全攻略:从基础配置到控制台优化

1. MinIO对象存储基础认知 第一次接触MinIO时&#xff0c;我也被它"高性能对象存储"的宣传语唬住了。后来在实际项目中用了三年才发现&#xff0c;这东西其实就是个加强版的网盘系统。你可以把它想象成能自己搭建的私有化"百度云"&#xff0c;但比商业云盘…...