动态规划:股票买卖,子序列
题目
股票买卖
309.最佳买卖股票时机含冷冻期
714.买卖股票的最佳时机含手续费
子序列
300.最长递增子序列
674. 最长连续递增序列
718. 最长重复子数组
对题目的想法
- 股票买卖的两道题看起来都不太难,因为状态数比较直观,按照之前的题目模板递推就行
- 子序列问题的动态规划方法想不出来,自己尝试了别的方法勉强过了
实现中/后的感想
- 股票问题:
其实写起来不够自信,虽然一次过了,但是提交的时候心存侥幸,说明并没有百分百搞懂这些题目。 - 子序列:
- 递增子序列用了构造子序列的方法(看了leetcode)的题解,因为感觉比dp更简洁。然而在二分法上又犯了难,这一次需要寻找刚好大于目标数组中某个元素的位置,所以
right = mid
,left = mid + 1
,这样left就永远比target大。 - 子序列的dp方法看了一遍尤其是最长重复子数组的二维数组遍历,其实没有完全明白,明天再慢慢体会。