求解 Python 中一維陣列執行和的程式
假設我們有一個數組 nums。陣列的執行和 rs[i] 是從 nums[0] 到 nums[i] 所有元素的總和。最後返回 nums 的全部執行和。
因此,如果輸入為 nums = [8,3,6,2,1,4,5],則輸出將為 [8, 11, 17, 19, 20, 24, 29],因為
rs[0] = nums[0] rs[1] = sum of nums[0..1] = 8 + 3 = 11 rs[2] = sum of nums[0..2] = 8 + 3 + 6 = 17 and so on
為解決此問題,我們將遵循以下步驟 −
n:= nums 的大小
rs:= [nums[0]]
對於 i 介於 1 到 n - 1 之間,執行
nums[i] := nums[i] + nums[i-1]
在 rs 的末尾插入 nums[i]
返回 rs
示例 (Python)
我們看看以下實現,以便更好地理解 −
def solve(prices): n=len(nums) rs=[nums[0]] for i in range(1,n): nums[i]+=nums[i-1] rs.append(nums[i]) return rs nums = [8,3,6,2,1,4,5] print(solve(nums))
輸入
[8,3,6,2,1,4,5]
輸出
[8, 11, 17, 19, 20, 24, 29]
廣告
資料結構
Networking
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP