新闻详情

新闻详情

首页 / 资讯中心 / 详情

DeepSeek LeetCode 122. 买卖股票的最佳时机 II Rust实现

发布时间:2026/9/28 4:46:21来源:尧图网络
DeepSeek    LeetCode 122. 买卖股票的最佳时机 II Rust实现
LeetCode 122. 买卖股票的最佳时机 IIRust 实现思路由于可以无限次交易且任意时刻最多持有一股所以只要后一天价格比前一天高就可以在前一天买入、后一天卖出赚取差价。将所有相邻两天的正收益累加即为最大利润。也可以用动态规划维护两个状态——不持股的最大利润 cash 和持股的最大利润 hold。Rust 实现贪心法implSolution{pubfnmax_profit(prices:Veci32)-i32{letmutprofit0;foriin1..prices.len(){ifprices[i]prices[i-1]{profitprices[i]-prices[i-1];}}profit}}Rust 实现动态规划implSolution{pubfnmax_profit(prices:Veci32)-i32{ifprices.is_empty(){return0;}// cash: 不持股的最大利润hold: 持股的最大利润letmutcash0;letmuthold-prices[0];foriin1..prices.len(){letnew_cashcash.max(holdprices[i]);letnew_holdhold.max(cash-prices[i]);cashnew_cash;holdnew_hold;}cash}}关键点贪心法每一段上涨都拆成每天的正收益累加即可时间复杂度 O(n)空间 O(1)。动态规划· cash 表示当天不持股的最大利润hold 表示当天持股的最大利润。· 状态转移· cash max(cash, hold prices[i])今天卖出· hold max(hold, cash - prices[i])今天买入注意这里用的是前一天的 cash因为当天只能操作一次但代码中先计算 new_cash 再计算 new_hold使用旧 cash 是正确的· 最终返回 cash。Rust 注意使用 i32::max 或 .max() 方法prices 为空时直接返回 0。复杂度· 时间O(n)遍历一次。· 空间O(1)只用了常数个变量。测试用例#[test]fntest_max_profit(){assert_eq!(Solution::max_profit(vec![7,1,5,3,6,4]),7);assert_eq!(Solution::max_profit(vec![1,2,3,4,5]),4);assert_eq!(Solution::max_profit(vec![7,6,4,3,1]),0);}
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

FAST_LIO编译与运行实战:Ubuntu 20.04 + Livox + ROS Noetic 2026/9/28 9:35:12

FAST_LIO编译与运行实战:Ubuntu 20.04 + Livox + ROS Noetic

1. 项目概述:FAST_LIO到底是什么,为什么值得折腾FAST_LIO这个名字,做激光SLAM的朋友应该不陌生。它是香港大学MARS实验室开源的激光雷达惯性里程计算法,核心思路是把激光雷达点云和IMU数据进行紧耦合,利用迭代误差状态…

阅读更多 →
Godot射线车地形类型系统:从物理参数到驾驶手感的完整实现 2026/9/28 9:35:12

Godot射线车地形类型系统:从物理参数到驾驶手感的完整实现

1. 射线车物理里被低估的一环:地形类型到底在解决什么问题做 Godot 射线车(Raycast Vehicle)的人,十有八九都经历过这个阶段:四个轮子各打一条射线,检测到碰撞体就施加弹簧力,车能跑能跳&#x…

阅读更多 →
高通410随身WiFi变身短信转发器:Debian系统Python脚本实战 2026/9/28 9:35:12

高通410随身WiFi变身短信转发器:Debian系统Python脚本实战

如果你手头有一台高通410方案的随身WiFi,而且跑的是Debian系统,那恭喜,你手里其实不是一台普通的热点设备,而是一台小服务器。最近我就拿它干了一件事:让设备自己把收到的短信转发出去。不刷机、不改内核、不折腾Bootl…

阅读更多 →
Claude Code与Codex双AI协同协议实战指南 2026/9/28 9:34:59

Claude Code与Codex双AI协同协议实战指南

1. 项目概述:这不是“插件”,而是一次AI协作范式的现场拆解最近在技术圈刷屏的标题——“在 Claude Code 里召唤 Codex:OpenAI 刚发布的这个插件让两个 AI 打工人联手了”——乍看像营销号爆款,但实际点开 GitHub 仓库、跑通本地流…

阅读更多 →
Python深度学习实战:CNN草莓腐烂图像分类模型训练与部署 2026/9/28 9:34:59

Python深度学习实战:CNN草莓腐烂图像分类模型训练与部署

简介:这份资源面向具备一定Python基础、希望入门计算机视觉与深度学习实战的开发者与学习者,围绕草莓腐烂识别这一具体场景,提供从数据准备到模型训练再到可视化交互的完整代码方案。压缩包共523个文件,以517张jpg图片构成数据集主…

阅读更多 →
游戏特效技术栈全解析:粒子、Shader、TimeLine与脚本工具学习路径 2026/9/28 9:34:59

游戏特效技术栈全解析:粒子、Shader、TimeLine与脚本工具学习路径

1. 游戏特效技术栈全景拆解与学习路径规划1.1 为什么特效师需要打通粒子、Shader、TimeLine和脚本四条链路很多刚入行的朋友问我,做游戏特效到底要学多少东西。我的回答通常是:如果你只想做“能看”的特效,粒子系统玩熟就够了;但如…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉