Leetcode練習(Python):第303題:區域和檢索 - 數組不可變:給定一個整數數組 nums,求出數組從索引 i 到 j (i ≤ j) 范圍內元素的總和,包含 i, j 兩點。


題目:

區域和檢索 - 數組不可變:給定一個整數數組  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.nums = nums
    
    def sumRange(self, i: int, j: int) -> int:
        result = 0
        for index in range(i, j + 1):
            result += self.nums[index]
        return result
        
# Your NumArray object will be instantiated and called as such:
# obj = NumArray(nums)
# param_1 = obj.sumRange(i,j)

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



猜您在找 Leetcode練習(Python):數組類:第162題:峰值元素是指其值大於左右相鄰值的元素。 給定一個輸入數組 nums,其中 nums[i] ≠ nums[i+1],找到峰值元素並返回其索引。 數組可能包含多個峰值,在這種情況下,返回任何一個峰值所在位置即可。 你可以假設 nums[-1] = nums[n] = -∞。 Leetcode練習(Python):數組類:第53題:給定一個整數數組 nums ,找到一個具有最大和的連續子數組(子數組最少包含一個元素),返回其最大和。進階: 如果你已經實現復雜度為 O(n) 的解法,嘗試使用更為精妙的分治法求解。 Leetcode練習(Python):哈希表類:第136題:給定一個非空整數數組,除了某個元素只出現一次以外,其余每個元素均出現兩次。找出那個只出現了一次的元素。 Leetcode練習(Python):數組類:第15題:給你一個包含 n 個整數的數組 nums,判斷 nums 中是否存在三個元素 a,b,c ,使得 a + b + c = 0 ?請你找出所有滿足條件且不重復的三元組。 注意:答案中不可以包含重復的三元組。 Leetcode練習(Python):數組類:第34題:給定一個按照升序排列的整數數組 nums,和一個目標值 target。找出給定目標值在數組中的開始位置和結束位置。 你的算法時間復雜度必須是 O(log n) 級別。 如果數組中不存在目標值,返回 [-1, -1]。 Leetcode練習(Python):第283題:移動零:給定一個數組 nums,編寫一個函數將所有 0 移動到數組的末尾,同時保持非零元素的相對順序。 Leetcode練習(Python):數組類:第59題:給定一個正整數 n,生成一個包含 1 到 n2 所有元素,且元素按順時針順序螺旋排列的正方形矩陣。 [LeetCode] Range Sum Query - Immutable 區域和檢索 - 不可變 Leetcode練習(Python):數組類:第64題:給定一個包含非負整數的 m x n 網格,請找出一條從左上角到右下角的路徑,使得路徑上的數字總和為最小。 說明:每次只能向下或者向右移動一步。 在排序數組中查找元素的第一個和最后一個位置(給定一個按照升序排列的整數數組 nums,和一個目標值 target。找出給定目標值在數組中的開始位置和結束位置。)
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM