列表

详情


1480. 一维数组的动态和

给你一个数组 nums 。数组「动态和」的计算公式为:runningSum[i] = sum(nums[0]…nums[i])

请返回 nums 的动态和。

 

示例 1:

输入:nums = [1,2,3,4]
输出:[1,3,6,10]
解释:动态和计算过程为 [1, 1+2, 1+2+3, 1+2+3+4] 。

示例 2:

输入:nums = [1,1,1,1,1]
输出:[1,2,3,4,5]
解释:动态和计算过程为 [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]

 

提示:

原站题解

去查看

上次编辑到这里,代码来自缓存 点击恢复默认模板
class Solution { public: vector<int> runningSum(vector<int>& nums) { } };

cpp 解法, 执行用时: 4 ms, 内存消耗: 8.6 MB, 提交时间: 2023-10-11 10:44:53

class Solution {
public:
    vector<int> runningSum(vector<int>& nums) {
        for ( int i = 1; i < nums.size(); ++i )
            nums[i] += nums[i-1];
        return nums;
    }
};

java 解法, 执行用时: 0 ms, 内存消耗: 40.8 MB, 提交时间: 2023-10-11 10:44:35

class Solution {
    public int[] runningSum(int[] nums) {
        for ( int i = 1; i < nums.length; ++i )
            nums[i] += nums[i-1];
        return nums;
    }
}

python3 解法, 执行用时: 48 ms, 内存消耗: 15.1 MB, 提交时间: 2022-07-07 14:32:11

class Solution:
    def runningSum(self, nums: List[int]) -> List[int]:
        n = len(nums)
        for i in range(1, n):
            nums[i] += nums[i-1]
        return nums

python3 解法, 执行用时: 40 ms, 内存消耗: 15.1 MB, 提交时间: 2022-07-07 14:30:50

class Solution:
    def runningSum(self, nums: List[int]) -> List[int]:
        ans = []
        for i, num in enumerate(nums):
            if i == 0:
                ans.append(num)
            else:
                ans.append(num + ans[-1])
        return ans

golang 解法, 执行用时: 0 ms, 内存消耗: 2.6 MB, 提交时间: 2020-11-09 22:51:20

func runningSum(nums []int) []int {
    for i := 1; i < len(nums); i++ {
        nums[i] += nums[i-1]
    }
    return nums
}

golang 解法, 执行用时: 4 ms, 内存消耗: 2.7 MB, 提交时间: 2020-11-09 22:48:36

func runningSum(nums []int) []int {
    ans := make([]int, len(nums))
    sum := 0
    for i, k := range nums {
        sum += k
        ans[i] = sum
    }
    return ans
}

python3 解法, 执行用时: 40 ms, 内存消耗: 13.6 MB, 提交时间: 2020-11-09 22:46:59

class Solution:
    def runningSum(self, nums: List[int]) -> List[int]:
        ans = []
        t = 0
        for i in nums:
            t += i
            ans.append(t)
        return ans

python3 解法, 执行用时: 56 ms, 内存消耗: 13.7 MB, 提交时间: 2020-11-09 22:45:14

class Solution:
    def runningSum(self, nums: List[int]) -> List[int]:
        return [sum(nums[:i+1]) for i in range(0, len(nums))]

上一题