來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/running-sum-of-1d-array
題目描述:
給你一個(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]
題目分析:
- nums[I] = sum(nums[0] +...nums[I])之和
思路:
使用total從索引0開始記錄nums順序累加之和設(shè)置到nums對(duì)應(yīng)的索引即可
代碼實(shí)現(xiàn):
class Solution {
public int[] runningSum(int[] nums) {
int len = nums.length;
int total = 0;
for (int i = 0; i < len; i++) {
total += nums[i]; // 記錄累加和.
nums[i] = total;
}
return nums;
}
}