LeetCode1480 一維陣列的動態和

2021-10-08 18:30:34 字數 860 閱讀 9929

一. 題目

問題給你乙個陣列 nums 。陣列「動態和」的計算公式為:runningsum[i] = sum(nums[0]…nums[i]) 。

請返回 nums 的動態和。

示例

二. 方法一

解題思路

建立乙個列表, 用於儲存計算後的值

解題**

def

runningsum

(self, nums: list[

int])-

> list[

int]

: lst =

sum=

0for ele in nums:

sum+= ele

sum)

return lst

分析時間複雜度: o(n)

空間複雜度: o(n)

三. 方法二

解題思路

在計算結果儲存到原來的列表中

解題**

def

runningsum

(self, nums: list[

int])-

> list[

int]

:for i in

range(1

,len

(nums)):

nums[i]

= nums[i]

+ nums[i -1]

return nums

分析:時間複雜度: o(n)

空間複雜度: o(1)

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 輸入 num...

leetcode 實現一維max pooling

思路有點像滑動視窗最大值。對乙個一維陣列做核為k的max pooling,步長為1,並寫出時間複雜度 思路 使用乙個雙端佇列 deque 作為輔助空間,其中內容為陣列的index。首先處理index從0到size 1 size為核長 如果deque空,直接壓入當前index到佇列尾部,否則對比佇列尾...

求一維陣列蓄水數

很多程式設計師在面試的時候,都可能遇到一些邏輯思維 程式設計題,這樣的題目非常有意思。而且非常考驗程式設計師的解題技巧和 編寫能力。我這兒就曾經遇到過乙個。具體需求看圖 1 先找出整個陣列中的最大值。2 整個陣列就被這個最大值給分成了兩個陣列。3 左邊陣列,從左往右遍歷,計算每個位置的蓄水數,計算規...