新闻详情

新闻详情

首页 / 资讯中心 / 详情

买卖股票的最佳时机 II

发布时间:2026/9/30 9:41:08来源:尧图网络
买卖股票的最佳时机 II
题目描述给你一个整数数组pricespricesprices其中prices[i]prices[i]prices[i]表示某支股票第iii天的价格在每一天你可以决定是否购买和/或出售股票。你在任何时候 最多 只能持有 一股 股票。然而你可以在 同一天 多次买卖该股票但要确保你持有的股票不超过一股返回你能获得的最大利润示例 1输入prices [7,1,5,3,6,4]输出7解释在第 2 天股票价格 1的时候买入在第 3 天股票价格 5的时候卖出, 这笔交易所能获得利润 5 - 1 4。随后在第 4 天股票价格 3的时候买入在第 5 天股票价格 6的时候卖出, 这笔交易所能获得利润 6 - 3 3。最大总利润为 4 3 7示例 2输入prices [1,2,3,4,5]输出4解释在第 1 天股票价格 1的时候买入在第 5 天 股票价格 5的时候卖出, 这笔交易所能获得利润 5 - 1 4。最大总利润为 4算法思想以折线图来查看股票价格通过这个图我们可以发现只要将每一段递增区间中最后一个值和第一个值和的差计算出来并求和就可以得到结果。那这就是贪心的思路实现方式有两种双指针和一天一天计算利润双指针设定两个指针i0i 0i0jij iji当prices[j1]prices[j]prices[j 1] prices[j]prices[j1]prices[j]时jjj向后移动否则jjj不动最终jjj会移动至递增区间的最后一个值此时计算prices[j]−prices[i]prices[j] - prices[i]prices[j]−prices[i]加入结果计算完成让iii移动至j1j 1j1的位置继续找递增区间一天天计算利润递增区间最后一天减去第一天得到的利润可以拆分成内部每一天减去前一天的利润之和。所以设定一个指针iii遍历数组当prices[i1]prices[i]prices[i 1] prices[i]prices[i1]prices[i]时计算它们的差加到结果中代码// 1. 双指针classSolution{public:intmaxProfit(vectorintprices){intret0;for(inti0;iprices.size();){intji;while(jprices.size()-1prices[j1]prices[j]){j;}retprices[j]-prices[i];ij1;}returnret;}};// 2. 一天一天算利润classSolution{public:intmaxProfit(vectorintprices){intret0;for(inti0;iprices.size()-1;i){if(prices[i1]prices[i]){retprices[i1]-prices[i];}}returnret;}};
网站建设高端定制企业官网
RELATED

相关资讯

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

较早相关资讯

最新相关资讯

元宝    LeetCode 130. 被围绕的区域 Golang实现 2026/9/30 11:25:48

元宝 LeetCode 130. 被围绕的区域 Golang实现

LeetCode 130 的核心不是「找被包围的 O」,而是反过来:先保住所有和边界连通的 O,剩下的 O 才是真被包围的。 思路(DFS 反向标记) 扫描矩阵四条边界(第一行、最后一行、第一列、最后一列)边界上…

阅读更多 →
linux kernel struct 之 ptdesc 2026/9/30 11:25:48

linux kernel struct 之 ptdesc

struct ptdesc 的定义在 Linux 内核的 include/linux/mm_types.h 文件中(早期版本曾放在 include/linux/pgtable.h)。它的设计目标是将页表元数据从 struct page 中拆分出来,目前通过完全覆盖(overlay) struct page 的…

阅读更多 →
侵入式双向链表 2026/9/30 11:25:48

侵入式双向链表

侵入时双向链表不需要单独进行内存分配,跟随具体结构进行分配,详细数据结构:typedef structure list_node {struct list_node *next;struct list_node *prev; } list_t;链表初始化初始化链表,哨兵自己成环。list->next list; …

阅读更多 →
元宝    LeetCode 131. 分割回文串 Rust实现 2026/9/30 11:25:47

元宝 LeetCode 131. 分割回文串 Rust实现

Rust 实现 LeetCode 131 的核心逻辑和 Python 完全一致,依然是回溯(Backtracking)。不过在 Rust 里需要稍微注意字符串处理和递归函数的写法。 方法一:回溯 实时回文判断(最直观,面试首选)AC R…

阅读更多 →
PDF页面大小不一,如何统一尺寸 2026/9/30 11:25:41

PDF页面大小不一,如何统一尺寸

合并论文图纸后,PDF页面大小参差不齐,两个方法:一、在线方案,免费;二、本地方案,福昕编辑器高级版。第一个方法(打开下图中的地址,亲测100%免费有效):&#x…

阅读更多 →
当兔软骨细胞“说服不了审稿人”:山羊原代关节软骨细胞如何填补大动物软骨研究的细胞空白 2026/9/30 11:25:41

当兔软骨细胞“说服不了审稿人”:山羊原代关节软骨细胞如何填补大动物软骨研究的细胞空白

在骨关节炎与软骨修复研究领域,研究者长期面临一个核心矛盾:人源关节软骨细胞难以稳定获取,而啮齿类软骨细胞的基质代谢特征、力学响应模式和软骨厚度与人类存在显著差距。许多在啮齿类模型中有效的软骨修复策略,进入临床后因转化…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

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

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