###### tags: `LeetCode Study Group - Array` `LeetCode Easy` `LeetCode Study Group` # 1480. Running Sum of 1d Array ### Easy Link: https://leetcode.com/problems/running-sum-of-1d-array/description/ Given an array nums. We define a running sum of an array as runningSum[i] = sum(nums[0]…nums[i]). Return the running sum of nums. Example 1: > Input: nums = [1,2,3,4] > Output: [1,3,6,10] > Explanation: Running sum is obtained as follows: [1, 1+2, 1+2+3, 1+2+3+4]. Example 2: > Input: nums = [1,1,1,1,1] > Output: [1,2,3,4,5] > Explanation: Running sum is obtained as follows: [1, 1+1, 1+1+1, 1+1+1+1, 1+1+1+1+1]. Example 3: > Input: nums = [3,1,2,10,1] > Output: [3,4,6,16,17] Constraints: 1 <= nums.length <= 1000 -10^6 <= nums[i] <= 10^6 ## Solution-1 Time complexity: O(n*n) ```java class Solution { public int[] runningSum(int[] nums) { int[] results = new int[nums.length]; for(int i = 0; i < results.length; i++) { int sum = 0; for(int j = 0; j <= i; j++){ sum = sum + nums[j]; } results[i] = sum; } return results; } } ``` This is my first solution. Although I solve it, it is brute force solotion. I use for loop twice to calculate the sum of the nums array. ## Solution-2 Time complexity: O(n) Evolve from brute force to optimal​. The better solution is adding the value of previous index in array. ```java class Solution { public int[] runningSum(int[] nums) { for(int i = 1; i < nums.length; i++) { nums[i] += nums[i - 1]; } return nums; } } ```