import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     *
     * @param prices int整型一维数组
     * @return int整型
     */
    public int max_profitv2 (int[] prices) {
        int sum = 0;
        // 就是求每个价格间隔大于0的总和!!!
        for (int i = 1; i < prices.length; i++) {
            // 等价:if(prices[i]-prices[i-1]>0){ sum+= prices[i]-prices[i-1]; } 好像稍微快一点,能够达到0ms
            sum = Math.max(sum, sum + (prices[i] - prices[i - 1]));
        }
        return sum;
    }
}

本题知识点分析:

1.贪心算法

2.数组遍历

3.API函数(Math.max)

4.数学模拟

本题解题思路分析:

1.因为可以多次买入卖出,其实就是求价格间隔大于0的总和

2.可以用if语句判断或者Math.max直接取较大值

3.if语句比较好理解,利润>0那么就留下来加上

4.本题=力扣买票股票最佳时机II

本题使用编程语言: Java

如果本篇文章对您有帮助的话,可以点个赞支持一下,感谢~