Bird
Raised Fist0
DSA Typescriptprogramming~5 mins

Prefix Sum Array in DSA Typescript - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is a Prefix Sum Array?
A Prefix Sum Array is a new array where each element at index i is the sum of all elements from the start up to index i in the original array.
Click to reveal answer
beginner
How do you compute the prefix sum array for [2, 4, 6, 8]?
Start with the first element: 2. Then add each next element to the sum of all previous elements: [2, 6, 12, 20].
Click to reveal answer
intermediate
Why is a prefix sum array useful?
It helps quickly find the sum of any subarray by subtracting prefix sums, reducing repeated addition and improving performance.
Click to reveal answer
beginner
What is the time complexity to build a prefix sum array of size n?
The time complexity is O(n) because you calculate each prefix sum by adding one element at a time.
Click to reveal answer
intermediate
How do you find the sum of elements between indices i and j using a prefix sum array?
Sum from i to j = prefixSum[j] - prefixSum[i - 1] (if i > 0), else prefixSum[j] if i = 0.
Click to reveal answer
What does the element at index 3 in a prefix sum array represent?
ASum of elements from index 3 to end of the array
BValue of the original array at index 3
CDifference between elements at index 3 and 2
DSum of elements from index 0 to 3 in the original array
What is the time complexity to get the sum of a subarray using a prefix sum array?
AO(1)
BO(n)
CO(log n)
DO(n^2)
If prefixSum = [3, 7, 12, 18], what is the original array?
A[3, 7, 12, 18]
B[3, 4, 5, 6]
C[3, 10, 22, 40]
D[3, 3, 5, 6]
Which of these is NOT a benefit of using prefix sum arrays?
AFaster subarray sum queries
BImproves performance for multiple queries
CLess memory usage than original array
DSimplifies repeated sum calculations
What is the prefix sum of an empty array?
A[]
B[0]
C[null]
DUndefined
Explain how to build a prefix sum array from a given array step-by-step.
Think about adding elements one by one and storing sums.
You got /4 concepts.
    Describe how prefix sum arrays help in finding the sum of any subarray quickly.
    Focus on subtraction of prefix sums to get subarray sums.
    You got /4 concepts.

      Practice

      (1/5)
      1. What is the main purpose of a prefix sum array in algorithms?
      easy
      A. To quickly find the sum of elements between any two indices
      B. To sort the array elements in ascending order
      C. To reverse the array elements
      D. To find the maximum element in the array

      Solution

      1. Step 1: Understand what prefix sum array stores

        A prefix sum array stores cumulative sums of elements from the start up to each index.
      2. Step 2: Identify the use of prefix sums

        Using prefix sums, we can find the sum of any subarray quickly by subtracting two prefix sums.
      3. Final Answer:

        To quickly find the sum of elements between any two indices -> Option A
      4. Quick Check:

        Prefix sum array = fast range sum queries [OK]
      Hint: Prefix sums help answer range sum queries fast [OK]
      Common Mistakes:
      • Confusing prefix sum with sorting
      • Thinking prefix sum reverses array
      • Assuming prefix sum finds max element
      2. Which of the following TypeScript code snippets correctly initializes a prefix sum array prefix for an input array arr?
      easy
      A. const prefix = []; for(let i=0; i
      B. const prefix = [0]; for(let i=0; i
      C. const prefix = [arr[0]]; for(let i=1; i
      D. const prefix = [0]; for(let i=1; i<=arr.length; i++) { prefix[i] = prefix[i-1] + arr[i]; }

      Solution

      1. Step 1: Check initialization and loop indexing

        const prefix = [0]; for(let i=0; i
      2. Step 2: Identify errors in other options

        const prefix = []; for(let i=0; i
      3. Final Answer:

        const prefix = [0]; for(let i=0; i -> Option B
      4. Quick Check:

        Prefix sum array starts with 0 and accumulates sums [OK]
      Hint: Start prefix with 0 and add arr[i] in loop [OK]
      Common Mistakes:
      • Accessing array out of bounds
      • Not initializing prefix[0] to 0
      • Using negative indices
      3. Given the TypeScript code below, what is the output printed?
      const arr = [2, 4, 6, 8];
      const prefix = [0];
      for(let i = 0; i < arr.length; i++) {
        prefix[i + 1] = prefix[i] + arr[i];
      }
      console.log(prefix);
      medium
      A. [2, 6, 12, 20]
      B. [0, 2, 4, 6, 8]
      C. [0, 2, 6, 12, 20]
      D. [2, 4, 6, 8, 0]

      Solution

      1. Step 1: Calculate prefix sums step-by-step

        prefix[0] = 0 prefix[1] = 0 + 2 = 2 prefix[2] = 2 + 4 = 6 prefix[3] = 6 + 6 = 12 prefix[4] = 12 + 8 = 20
      2. Step 2: Confirm final prefix array

        The prefix array is [0, 2, 6, 12, 20].
      3. Final Answer:

        [0, 2, 6, 12, 20] -> Option C
      4. Quick Check:

        Sum accumulates correctly in prefix array [OK]
      Hint: Add each element to previous prefix sum [OK]
      Common Mistakes:
      • Forgetting initial 0 in prefix
      • Adding wrong elements in loop
      • Off-by-one errors in indexing
      4. The following TypeScript code attempts to create a prefix sum array but has a bug. What is the error?
      const arr = [1, 3, 5];
      const prefix = [];
      for(let i = 0; i < arr.length; i++) {
        prefix[i + 1] = prefix[i] + arr[i];
      }
      console.log(prefix);
      medium
      A. prefix array is not initialized with 0 at index 0
      B. Loop runs one time too many
      C. arr[i] is accessed out of bounds
      D. prefix array is declared with wrong type

      Solution

      1. Step 1: Check prefix array initialization

        The prefix array is empty initially, so prefix[0] is undefined.
      2. Step 2: Identify impact on prefix sum calculation

        prefix[i] is undefined for i=0, so prefix[1] = undefined + arr[0] results in NaN.
      3. Final Answer:

        prefix array is not initialized with 0 at index 0 -> Option A
      4. Quick Check:

        Initialize prefix[0] = 0 to avoid NaN [OK]
      Hint: Always start prefix array with 0 at index 0 [OK]
      Common Mistakes:
      • Not initializing prefix[0]
      • Assuming empty array has prefix[0]
      • Ignoring NaN results
      5. You have an array arr = [3, 1, 4, 1, 5, 9, 2]. Using a prefix sum array, how would you efficiently find the sum of elements from index 2 to 5 (inclusive)?
      hard
      A. Calculate prefix sums, then sum = prefix[5] - prefix[1]
      B. Calculate prefix sums, then sum = prefix[6] - prefix[1]
      C. Calculate prefix sums, then sum = prefix[5] - prefix[2]
      D. Calculate prefix sums, then sum = prefix[6] - prefix[2]

      Solution

      1. Step 1: Understand prefix sum indexing

        Prefix sum array prefix has prefix[0] = 0, prefix[i] = sum of arr[0] to arr[i-1].
      2. Step 2: Calculate sum from index 2 to 5

        Sum = prefix[6] - prefix[2], because prefix[6] sums arr[0..5], prefix[2] sums arr[0..1].
      3. Final Answer:

        Calculate prefix sums, then sum = prefix[6] - prefix[2] -> Option D
      4. Quick Check:

        Sum of arr[2..5] = prefix[6] - prefix[2] [OK]
      Hint: Sum(i to j) = prefix[j+1] - prefix[i] [OK]
      Common Mistakes:
      • Off-by-one errors in prefix indices
      • Subtracting wrong prefix sums
      • Confusing inclusive/exclusive ranges
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard