leetcode -- 303. 区域和检索 - 数组不可变
生活随笔
收集整理的這篇文章主要介紹了
leetcode -- 303. 区域和检索 - 数组不可变
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
給定一個(gè)整數(shù)數(shù)組 ?nums,求出數(shù)組從索引?i?到?j??(i?≤?j) 范圍內(nèi)元素的總和,包含?i,? j?兩點(diǎn)。
示例:
給定 nums = [-2, 0, 3, -5, 2, -1],求和函數(shù)為 sumRange()sumRange(0, 2) -> 1 sumRange(2, 5) -> -1 sumRange(0, 5) -> -3說明:
大佬:
Jack_Lu
思路:
1. [a,b]的和可以表示為0-b的和 ?- ?0-a的和
2.sum[i] 表示前i項(xiàng)的和
class NumArray { public:NumArray(vector<int>& nums) {int N = nums.size();if(N==0) return;sum = vector<int>(N,0);sum[0] = nums[0];for(int i = 1; i < N; i++){sum[i] = sum[i-1]+nums[i];}}int sumRange(int i, int j) {if(i==0) return sum[j];else return sum[j] - sum[i-1];}private:vector<int> sum;};/*** Your NumArray object will be instantiated and called as such:* NumArray* obj = new NumArray(nums);* int param_1 = obj->sumRange(i,j);*/?
總結(jié)
以上是生活随笔為你收集整理的leetcode -- 303. 区域和检索 - 数组不可变的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: leetcode--5. 最长回文子串
- 下一篇: leetcode--338. 比特位计数