代码随想录算法训练营19期第49天

121. 买卖股票的最佳时机

视频讲解:动态规划之 LeetCode:121.买卖股票的最佳时机1_哔哩哔哩_bilibili

代码随想录

初步思路:贪心。

总结:

分别考虑 2 种情况:

1 dp[i][0] 表示第i天持有股票所得最多现金

【2】dp[i][1] 表示第i天不持有股票所得最多现金

如果第i天持有股票即dp[i][0]: dp[i][0] = max(dp[i - 1][0], -prices[i])

如果第i天不持有股票即dp[i][1]: dp[i][1] = max(dp[i - 1][1], prices[i] + dp[i - 1][0]);

用时:45分钟

122.买卖股票的最佳时机II

视频讲解:动态规划,股票问题第二弹 | LeetCode:122.买卖股票的最佳时机II_哔哩哔哩_bilibili

代码随想录

初步思路:买卖股票的最佳时机I。

总结:

还是分别考虑 2 种情况:

1 dp[i][0] 表示第i天持有股票所得最多现金

【2】dp[i][1] 表示第i天不持有股票所得最多现金

如果第i天持有股票即dp[i][0]: dp[i][0] = max(dp[i - 1][0], dp[i - 1][1]-prices[i])

如果第i天不持有股票即dp[i][1]: dp[i][1] = max(dp[i - 1][1], prices[i] + dp[i - 1][0]);

用时:45分钟

相关推荐
你真是饿了1 小时前
算法专题二:滑动窗口
算法
ccLianLian1 小时前
数论·约数
数据结构·算法
会编程的土豆1 小时前
【数据结构与算法】最短路径---Dijkstra 算法
数据结构·c++·算法
2401_879693871 小时前
C++中的观察者模式实战
开发语言·c++·算法
炽烈小老头1 小时前
【 每天学习一点算法 2026/03/24】寻找峰值
学习·算法
fff9811182 小时前
C++与Qt图形开发
开发语言·c++·算法
计算机安禾2 小时前
【数据结构与算法】第3篇:C语言核心机制回顾(二):动态内存管理与typedef
c语言·开发语言·数据结构·c++·算法·链表·visual studio
njidf3 小时前
C++中的访问者模式
开发语言·c++·算法
C_Si沉思3 小时前
C++中的工厂模式变体
开发语言·c++·算法
C羊驼3 小时前
C语言学习笔记(十五):预处理
c语言·经验分享·笔记·学习·算法