Search⌘ K
AI Features

Solution: Range Sum Query - Immutable

Understand how to design the NumArray class to efficiently handle multiple range sum queries on an integer array. Learn to build and use a prefix sum array in the constructor to enable constant-time sum calculations between indices. This lesson covers algorithm implementation, complexity analysis, and practical usage to solve range sum queries using an immutable approach.

Statement

You are given an integer array, nums, and you need to handle multiple queries of the following type:

  • Query: Calculate the sum of elements in nums between indices i and j (inclusive), where i <= j.

Implement the NumArray class to support the following operations efficiently:

  • Constructor: Initializes the object with the integer array nums.

  • sumRange(i, j): Returns the sum of the elements of nums between indices i and j (inclusive), i.e., the sum of nums[i] + nums[i + 1] + ... + nums[j].

Constraints:

  • 11 \leq nums.length 103\leq 10^3

  • 105-10^5 \leq nums[i] ...