【貪心算法】Leetcode 122. 買賣股票的最佳時機 II
- 122. 買賣股票的最佳時機 II
- 貪心算法:整體利潤拆為每天的利潤,只收集每天的正利潤
122. 買賣股票的最佳時機 II
---------------🎈🎈122. 買賣股票的最佳時機 II 題目鏈接🎈🎈-------------------
貪心算法:整體利潤拆為每天的利潤,只收集每天的正利潤
利潤拆分是關鍵點! 不要整塊的去看,而是把整體利潤拆為每天的利潤。
一旦想到這里了,很自然就會想到貪心了,即:只收集每天的正利潤,最后穩穩的就是最大利潤了
時間復雜度O(N)
空間復雜度O(N)
class Solution {public int maxProfit(int[] prices) {// 兩兩求差 每兩天算一個利潤 // 最后返回所有正利潤的和即可!!!!!// prices = [7,1,5,3,6,4] >>> profit = [-6,4,-2,3,-2] >>> result = 4+3 = 7int result = 0;for(int i = 0; i < prices.length; i++) {if(i > 0 && prices[i] - prices[i-1] > 0){result += prices[i] - prices[i-1];}}return result;}
}