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
如果本篇文章对您有帮助的话,可以点个赞支持一下,感谢~

京公网安备 11010502036488号