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