LeetCode 數(shù)組--買賣股票

給定一個數(shù)組,它的第 i 個元素是一支給定股票第 i 天的價格。

設計一個算法來計算你所能獲取的最大利潤。你可以盡可能地完成更多的交易(多次買賣一支股票)。
這個問題的核心在于,做出一次買賣后,之前的都不要在管了,
因此,設計兩個指針,一個指針指一次買賣中的最小值,一次指一個買賣中的最大值。
問題的核心就在于買賣如何分,實際上,買可以隨時買,但賣一定是最高價賣。賣完這次交易就算結束了。/

class Solution {
    public int maxProfit(int[] prices) {
    
        if (prices.length<=1){
            return 0;
        }


        int min = 0;
        int max = 0;
        int p =0;
       while (max+1<prices.length){
           if (prices[min]>prices[max]){
               min = max;
               max = max + 1;
               continue;
           }
           if (prices[max]>prices[max+1]){
             
               p = p + prices[max]-prices[min];
               min = max+1;
               max = max+1;

               continue;
           }
           if (max+2==prices.length){
               p=p+prices[max+1]-prices[min];
           }
            max = max+1;
       }
        return p ;
    }
}
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容