File tree Expand file tree Collapse file tree 1 file changed +30
-1
lines changed Expand file tree Collapse file tree 1 file changed +30
-1
lines changed Original file line number Diff line number Diff line change 1- // http://bookshadow.com/weblog/2015/08/13/segment-tree-set-1-sum-of-given-range/
1+ // http://bookshadow.com/weblog/2015/08/13/segment-tree-set-1-sum-of-given-range/
2+
3+ //303. Range Sum Query - Immutable
4+
5+ /**
6+ * @param {number[] } nums
7+ */
8+ var NumArray = function ( nums ) {
9+ this . nums = [ ] ;
10+ this . nums [ 0 ] = 0 ;
11+ for ( var i = 0 ; i < nums . length ; i ++ ) {
12+ this . nums [ i + 1 ] = this . nums [ i ] + nums [ i ] ;
13+ }
14+ // console.log(this.nums);
15+ } ;
16+
17+ /**
18+ * @param {number } i
19+ * @param {number } j
20+ * @return {number }
21+ */
22+ NumArray . prototype . sumRange = function ( i , j ) {
23+ return ( this . nums [ j + 1 ] - this . nums [ i ] ) ;
24+ } ;
25+
26+ /**
27+ * Your NumArray object will be instantiated and called as such:
28+ * var obj = Object.create(NumArray).createNew(nums)
29+ * var param_1 = obj.sumRange(i,j)
30+ */
You can’t perform that action at this time.
0 commit comments