解法都在代码里,不懂就留言或者私信,比第一题稍微难点 class Solution {/**题目分析:这个问题是我们可以无限次买卖,这个题其实是寻找波峰和波谷的问题理论上我们在上升期的最低点买,最高点卖就能获得最大利润,但是寻找波峰和波谷的过程会比较麻烦我们这里代替一下寻找波峰和波谷:如果在上升阶段,把所有的点获得的利润(都是前一个交易日买这个交易日卖)加一起,其实就是波谷买波峰卖,只不过这样
122.买卖股票的最佳时机II 本题解法很巧妙,大家可以看题思考一下,在看题解。 题目讲解 | 题目链接 class Solution {public:int maxProfit(vector<int>& prices) {int result = 0;for (int i = 1; i < prices.size(); i++) {// 直接看两天之间的差值,将所有为正的加和int p
122. 买卖股票的最佳时机 II - 力扣(LeetCode) class Solution {public int maxProfit(int[] prices) {if(prices.length == 0){return 0;}int min = prices[0];int result = 0;for(int i=1;i<prices.length;i++){if(
122.买卖股票的最佳时机 II 最开始的思路是为了获得最大利益,低买高卖,在所有的低点都尝试购买,碰到更低的点,就把之前的抛掉,从新购买低点,然后我们要将所有挣钱的时候值都加起来。 将数组的值转成柱状图或则折线图来看,我们想要的就是所有的上升部分的值,所以在遍历时判断当前元素是否比前一个大,大则可以更新在这个点时上升的线段的最大值。在碰到下降的线段,即当前值比上一个值小的时候,说明前面的上升
122.买卖股票的最佳时机 II 题目链接:https://leetcode.cn/problems/best-time-to-buy-and-sell-stock-ii/ 文档讲解:https://programmercarl.com/0122.%E4%B9%B0%E5%8D%96%E8%82%A1%E7%A5%A8%E7%9A%84%E6%9C%80%E4%BD%B3%E… 视频讲解:ht