股票问题
买卖一次 k = 1
LeetCode 剑指 Offer 63. 股票的最大利润 中等
假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少?
LeetCode 121. 买卖股票的最佳时机 简单
给定一个数组 prices ,它的第 i 个元素 prices[i]
表示一支给定股票第 i 天的价格。
你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。
返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 。
不限买卖次数 k=infinity
LeetCode 122. 买卖股票的最佳时机 II 简单
给定一个数组 prices ,其中 prices[i] 是一支给定股票第 i 天的价格。
设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。
注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。
买卖两次 k = 2
LeetCode 123. 买卖股票的最佳时机 III 困难
买卖 k 次
LeetCode 188. 买卖股票的最佳时机 IV 困难
不限买卖次数 + 冷冻期
LeetCode 309. 最佳买卖股票时机含冷冻期 中等
给定一个整数数组,其中第 i 个元素代表了第 i 天的股票价格 。
设计一个算法计算出最大利润。在满足以下约束条件下,你可以尽可能地完成更多的交易(多次买卖一支股票):
1、你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。
2、卖出股票后,你无法在第二天买入股票 (即冷冻期为 1 天)。
不限买卖次数 + 手续费
LeetCode 714. 买卖股票的最佳时机含手续费 中等
给定一个整数数组 prices,其中第 i 个元素代表了第 i 天的股票价格 ;非负整数 fee 代表了交易股票的手续费用。
你可以无限次地完成交易,但是你每笔交易都需要付手续费。如果你已经购买了一个股票,在卖出它之前你就不能再继续购买股票了。
返回获得利润的最大值。