53. 大子數(shù)組和 - 力扣(Leetcode)

此題是典型的動態(tài)規(guī)劃算法
class Solution {
public int maxSubArray(int[] nums) {
//最終輸出的大值
int maxSum = nums[0];
for (int i = 1; i< nums.length; ++i) {
//改變后一個nums值,此值為前面大值+此值的和,循環(huán)過來時,nums[i-1]的值就是前面所有最優(yōu)值的和,每次都與0比較,說明如果前面的和計(jì)算出來有負(fù)值,就拋棄前面的數(shù),從當(dāng)前位置開始計(jì)算。
nums[i] = Math.max(nums[i - 1], 0) + nums[i];
//再將當(dāng)前最優(yōu)的和與上一次的maxsum比較,取大
maxSum = Math.max(maxSum, nums[i]);
}
return maxSum;
}
}最重要的一行
nums[i] = Math.max(nums[i - 1], 0) + nums[i];意為,將前面的值一個一個加起來,如果出現(xiàn)相加完后是負(fù)值的情況,那在下一次循環(huán)到這里時直接舍棄,以0為大值加上nums[i]作為和,然后繼續(xù)計(jì)算。
你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
網(wǎng)站題目:最大子數(shù)組和(java)-創(chuàng)新互聯(lián)
標(biāo)題URL:http://chinadenli.net/article44/dpgghe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、商城網(wǎng)站、企業(yè)建站、微信公眾號、品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容