小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

連續(xù)子數(shù)組的最大和

 行者花雕 2022-10-18 發(fā)布于北京

給一個數(shù)組,返回它的最大連續(xù)子序列的和。例如 [6,-3,-2,7,-15,1,2,2] 連續(xù)子序列的最大和為 8(從第 0 個開始,到第 3 個為止)。注意:連續(xù)子序列的起始下標不一定是 0。


解題思路

采用動態(tài)規(guī)劃的思想,假設(shè) dp[n] 表示以當前元素為截止點的連續(xù)子序列的最大和,那么可以得出狀態(tài)轉(zhuǎn)移方程 dp[n] = dp[n - 1] + array[n]

題目只要求最大值,因此每次都可以使用一個變量 max 記錄最大和,變量 res 記錄當前子序列的最大和,再將 max 與 res 比較,將更大的值賦給 max,最后返回 max 即可

public class Solution {
    public int FindGreatestSumOfSubArray(int[] array) {
        int res = array[0];
        int max = array[0];
        for(int i = 1; i < array.length; i++) {
        	// 當前子序列的最大和,要么是前一個子序列加上當前值,要么只是當前值
            res = Math.max(res + array[i], array[i]);
            max = Math.max(res, max);
        }
        return max;
    }
}

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多