Leetcode7月31日打卡

143 阅读1分钟

1.leetcode122题 股票买卖最大利润

可以多次买卖! 这里也是用到了贪心算法,总是在最高处卖,最低处买,这样是最合适的! 然后,两次买卖 一定比一次买卖的利润要高

注意,这种做法,由于最后一次必须是卖! 因此i的遍历每次开始 必须是i < length - 1 否则,最后一次买,就不符合要求了!

还可以用差分法,把所有大于0的加起来,虽然题目要求是不能同一天买卖,但是其实可以把他当成是正数起始买,正数结束卖!

还可以用dp!二维数组dp[i][0 表示前i天 不持有股票时候的最大值

dp【i】【1】 表示第i天持有股票的最大值