117:买卖股票的最佳时机III

LeetCode 123 https://leetcode.cn/problems/best-time-to-buy-and-sell-stock-iii/description/ 难度:困难 高频面试题汇总:https://www.yuweihung.com/posts/2025/lc-hot/ 本题是至少可以完成 k 次交易的股票买卖问题。 数组需要增加一维 k, f[n + 1][k + 2][2]。在买入(或卖出)时将剩余交易次数减一。 初始化 f[0][j][0] = 0,其他元素为 -INF。 时间复杂度:O(n),其中 n 为 prices 的长度。 空间复杂度:O(1)。 ...

七月 15, 2025 · Cassius

075:买卖股票的最佳时机 II

LeetCode 122 https://leetcode.cn/problems/best-time-to-buy-and-sell-stock-ii/description/ 难度:中等 高频面试题汇总:https://www.yuweihung.com/posts/2025/lc-hot/ 买卖股票类题目一般都是状态机 DP。f[i][0] 不持有股票,f[i][1] 持有股票。答案是 f[n][0]。初始化 f[0][0] = 0,f[0][1] = INT_MIN。 注意二维的 DP 数组,vector<int[2]> f(n + 1) 会比 vector<vector> 更快,如果数组长度固定,尽量使用 array 而不是 vector。 时间复杂度:O(n),其中 n 为 prices 的长度。 空间复杂度:O(n)。 ...

七月 4, 2025 · Cassius