122. 買賣股票的最佳時機 II

https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-ii/

  • 自己的解答
public int maxProfit(int[] prices) {
    int ans = 0;
    int i=0;
    int j;
    while(i<prices.length){

        for(j=i+1;j<prices.length;j++){
            if(prices[j]<=prices[j-1]){
                if(j-1>i){
                    ans += prices[j-1]-prices[i];
                }
                break;
            }
            if(j==prices.length-1){
                ans += prices[j]-prices[i];
                break;
            }

        }
        i=j;
    }
    return ans;
}
  • 動態(tài)規(guī)劃
image.png
public int maxProfit(int[] prices) {
    int[][] dp = new int[prices.length][2];
    dp[0][0] = 0;
    dp[0][1] = -prices[0];
    for(int i=1;i<prices.length;i++){
        dp[i][0] = Math.max(dp[i-1][0],dp[i-1][1]+prices[i]);
        dp[i][1] = Math.max(dp[i-1][1],dp[i-1][0]-prices[i]);
    }
    return dp[prices.length-1][0];
}
  • 貪心
public int maxProfit(int[] prices) {
    int ans = 0;
    int n = prices.length;
    for (int i = 1; i < n; ++i) {
        ans += Math.max(0, prices[i] - prices[i - 1]);
    }
    return ans;
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容