剑指 Offer 63. 股票的最大利润
思路:(这也是动态规划的思想)
在最低价买入,最高价卖出。
使用 min 保存最低买入价格,res 保存最大利润,遍历数组找到结果。
代码:
时间复杂度O(n),空间复杂度O(1)
class Solution { public int maxProfit(int[] prices) { if (prices.length == 0) return 0; int res = 0, min = prices[0]; for (int i = 1; i < prices.length; i++){ min = Math.min(min, prices[i-1]); res = Math.max(res, prices[i]-min); } return res; } }