Go 刷 leetcode|動(dòng)態(tài)規(guī)劃之簡(jiǎn)單驗(yàn)收
今天為大家講解 LeetCode 第 1480 題,有讀者表示最近幾題有點(diǎn)難度,今天就來一道簡(jiǎn)單的緩一緩叭(我當(dāng)然不會(huì)告訴你其實(shí)是我時(shí)間匆忙姑且水一道簡(jiǎn)單題
?:-D
題目描述
給你一個(gè)數(shù)組 nums 。數(shù)組「動(dòng)態(tài)和」的計(jì)算公式為:runningSum[i] = sum(nums[0]…nums[i]) 。
請(qǐng)返回 nums 的動(dòng)態(tài)和。
示例 1:
輸入:nums = [1,2,3,4] 輸出:[1,3,6,10] 解釋:動(dòng)態(tài)和計(jì)算過程為 [1, 1+2, 1+2+3, 1+2+3+4] 。示例 2:
輸入:nums = [1,1,1,1,1] 輸出:[1,2,3,4,5] 解釋:動(dòng)態(tài)和計(jì)算過程為 [1, 1+1, 1+1+1, 1+1+1+1, 1+1+1+1+1] 。示例 3:
輸入:nums = [3,1,2,10,1] 輸出:[3,4,6,16,17]
提示:
1 <= nums.length <= 1000 -10^6 <= nums[i] <= 10^6
來源:力扣(LeetCode) 鏈接:https://leetcode-cn.com/problems/running-sum-of-1d-array 著作權(quán)歸領(lǐng)扣網(wǎng)絡(luò)所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系官方授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。
解題思路
這題很簡(jiǎn)單粗暴,直接循環(huán)就完事!但是也有動(dòng)態(tài)規(guī)劃的思想
res[0] = nums[0] ? ( i = 0)
res[i] = res[i-1] + nums[i] ( i > 0)
相信大家都懂,不多解釋,直接上代碼
代碼實(shí)現(xiàn)
//go
func?runningSum(nums?[]int)?[]int?{
????length?:=?len(nums)
????res?:=?make([]int,?length)
????if?length?1?{
????????return?res
????}
????res[0]?=?nums[0]
????for?i?:=?1;?i?????????res[i]?=?res[i-1]?+?nums[i]
????}
????return?res
}
//java?
class?Solution?{
?????public?int[]?runningSum(int[]?nums)?{
?????????int?res[]?=?new?int[nums.length];
?????????res[0]?=?res[0];
?????????for(int?i?=?1;i??????????????res[i]?=?res[i-1]?+?nums[i];
?????????}
?????????return?res;
?????}
?}
鄭重聲明:
所展示代碼已通過 LeetCode 運(yùn)行通過,請(qǐng)放心食用~
推薦閱讀
站長(zhǎng) polarisxu
自己的原創(chuàng)文章
不限于 Go 技術(shù)
職場(chǎng)和創(chuàng)業(yè)經(jīng)驗(yàn)
Go語言中文網(wǎng)
每天為你
分享 Go 知識(shí)
Go愛好者值得關(guān)注
