區域和檢索 陣列不可變

2021-10-04 14:56:22 字數 603 閱讀 5710

給定乙個整數陣列  nums,求出陣列從索引 i 到 j  (i ≤ j) 範圍內元素的總和,包含 i,  j 兩點。

示例:給定 nums = [-2, 0, 3, -5, 2, -1],求和函式為 sumrange()

sumrange(0, 2) -> 1

sumrange(2, 5) -> -1

sumrange(0, 5) -> -3

說明:你可以假設陣列不可變。

會多次呼叫 sumrange 方法。

我就用的暴力解答

class numarray:

def __init__(self, nums: list[int]):

self.a=nums

def sumrange(self, i: int, j: int) -> int:

return sum(self.a[i:j+1])

# your numarray object will be instantiated and called as such:

# obj = numarray(nums)

# param_1 = obj.sumrange(i,j)

區域和檢索 陣列不可變

注意需要多次呼叫sumrange方法,所以不能簡單的進行區間遍歷求和,動態規劃一下,記錄一下 每個區間的和,然後根據索引直接求出結果。class numarray sums new int length sums 0 nums 0 for int i 1 i length i public int ...

區域和檢索 陣列不可變

給定乙個整數陣列 nums,求出陣列從索引 i 到 j i j 範圍內元素的總和,包含 i,j 兩點。給定 nums 2,0,3,5,2,1 求和函式為 sumrange sumrange 0,2 1 sumrange 2,5 1 sumrange 0,5 3 你可以假設陣列不可變。會多次呼叫 su...

Leetcode 區域和檢索 陣列不可變

描述 給定乙個整數陣列 nums,求出陣列從索引 i 到 j i j 範圍內元素的總和,包含 i,j 兩點。說明 可以假設陣列不可變 會多次呼叫區間和sumrange 方法 示例 給定 nums 2,0,3,5,2,1 求和函式為 sumrange sumrange 0,2 1 sumrange 2...