Bird
Raised Fist0
DSA Typescriptprogramming~10 mins

Array Deletion at Middle Index in DSA Typescript - Interactive Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to remove the middle element from the array.

DSA Typescript
const arr = [1, 2, 3, 4, 5];
const mid = Math.floor(arr.length / 2);
arr.[1](mid, 1);
console.log(arr);
Drag options to blanks, or click blank then click option'
Asplice
Bpush
Cslice
Dpop
Attempts:
3 left
💡 Hint
Common Mistakes
Using pop() removes the last element, not the middle.
Using slice() does not modify the original array.
2fill in blank
medium

Complete the code to find the middle index correctly for even length arrays.

DSA Typescript
const arr = [10, 20, 30, 40];
const mid = Math.[1](arr.length / 2);
arr.splice(mid, 1);
console.log(arr);
Drag options to blanks, or click blank then click option'
Around
Bceil
Cfloor
Dtrunc
Attempts:
3 left
💡 Hint
Common Mistakes
Using ceil() gives the upper middle index, which may be incorrect here.
3fill in blank
hard

Fix the error in the code to delete the middle element without modifying the original array.

DSA Typescript
const arr = [5, 6, 7, 8, 9];
const mid = Math.floor(arr.length / 2);
const newArr = arr.[1](mid, 1);
console.log(newArr);
Drag options to blanks, or click blank then click option'
Apop
Bslice
Csplice
Dshift
Attempts:
3 left
💡 Hint
Common Mistakes
Using splice modifies the original array and returns removed elements.
Using pop or shift removes elements only from ends.
4fill in blank
hard

Fill both blanks to create a new array without the middle element using slice.

DSA Typescript
const arr = [2, 4, 6, 8, 10];
const mid = Math.floor(arr.length / 2);
const newArr = arr.[1](0, mid).concat(arr.[2](mid + 1));
console.log(newArr);
Drag options to blanks, or click blank then click option'
Aslice
Bsplice
Cfilter
Dmap
Attempts:
3 left
💡 Hint
Common Mistakes
Using splice modifies the original array.
Using filter or map is not suitable for this direct slicing approach.
5fill in blank
hard

Fill all three blanks to delete the middle element and print the updated array.

DSA Typescript
function deleteMiddle(arr: number[]): number[] {
  const mid = Math.floor(arr.length / 2);
  arr.[1](mid, [2]);
  return arr;
}

const nums = [11, 22, 33, 44, 55];
console.log(deleteMiddle(nums)); // [3]
Drag options to blanks, or click blank then click option'
Asplice
B1
C[11, 22, 44, 55]
Dpop
Attempts:
3 left
💡 Hint
Common Mistakes
Using pop removes the last element, not the middle.
Removing zero elements does not change the array.

Practice

(1/5)
1. What does deleting the middle element from an array mean?
Example: [1, 2, 3, 4, 5] Delete the middle element.
easy
A. Remove the element at index 2 (value 3) from the array
B. Remove the first element (value 1) from the array
C. Remove the last element (value 5) from the array
D. Remove all elements except the middle one

Solution

  1. Step 1: Identify the middle index of the array

    The array has 5 elements, so middle index = floor(5/2) = 2.
  2. Step 2: Remove the element at the middle index

    Removing element at index 2 removes the value 3 from the array.
  3. Final Answer:

    Remove the element at index 2 (value 3) from the array -> Option A
  4. Quick Check:

    Middle index = 2, remove element 3 [OK]
Hint: Middle index = floor(length/2), remove that element [OK]
Common Mistakes:
  • Removing first or last element instead of middle
  • Using length/2 without floor for odd length
  • Confusing index with value
2. Which TypeScript code correctly deletes the middle element from array arr?
easy
A. arr.removeAt(Math.floor(arr.length / 2));
B. arr.splice(Math.floor(arr.length / 2), 1);
C. arr.delete(Math.floor(arr.length / 2));
D. arr.pop(Math.floor(arr.length / 2));

Solution

  1. Step 1: Identify correct method to remove element by index in TypeScript

    TypeScript arrays use splice(index, count) to remove elements at a specific index.
  2. Step 2: Use Math.floor(arr.length / 2) to get middle index

    This expression correctly calculates the middle index for deletion.
  3. Final Answer:

    arr.splice(Math.floor(arr.length / 2), 1); -> Option B
  4. Quick Check:

    splice + floor middle index = correct deletion [OK]
Hint: Use splice with floor(length/2) to delete middle [OK]
Common Mistakes:
  • Using non-existent methods like delete or removeAt
  • Using pop() which removes last element only
  • Not flooring the middle index calculation
3. What is the output of this TypeScript code?
let arr = [10, 20, 30, 40, 50];
arr.splice(Math.floor(arr.length / 2), 1);
console.log(arr);
medium
A. [20, 30, 40, 50]
B. [10, 20, 30, 40, 50]
C. [10, 20, 30, 50]
D. [10, 20, 40, 50]

Solution

  1. Step 1: Calculate middle index

    Array length is 5, so middle index = floor(5/2) = 2.
  2. Step 2: Remove element at index 2

    Element at index 2 is 30, so removing it results in [10, 20, 40, 50].
  3. Final Answer:

    [10, 20, 40, 50] -> Option D
  4. Quick Check:

    Removed element 30 at index 2 [OK]
Hint: Remove element at floor(length/2) index [OK]
Common Mistakes:
  • Not flooring index, causing wrong removal
  • Removing wrong element index
  • Expecting original array unchanged
4. Find the error in this code that tries to delete the middle element:
let arr = [5, 10, 15, 20];
arr.splice(arr.length / 2, 1);
console.log(arr);
medium
A. console.log syntax is incorrect
B. splice method does not exist on arrays
C. Using arr.length / 2 without floor causes wrong index
D. splice removes all elements, not one

Solution

  1. Step 1: Check middle index calculation

    arr.length / 2 = 4 / 2 = 2 (number), but for even length arrays, middle index should be floor(4/2) = 2, so this seems correct but in TypeScript splice expects integer index.
  2. Step 2: Verify if index is integer

    arr.length / 2 is 2 (integer), so no error here. But if length was odd, it would be float. The main issue is that for even length arrays, middle is ambiguous; usually floor is used to pick index 2.
  3. Step 3: Identify actual problem

    In this code, no floor is used but division results in integer 2, so no error. However, if length was odd, index would be float causing error. So best practice is to use Math.floor to ensure integer index.
  4. Final Answer:

    Using arr.length / 2 without floor causes wrong index -> Option C
  5. Quick Check:

    Always floor middle index for splice [OK]
Hint: Always floor middle index before splice [OK]
Common Mistakes:
  • Not flooring index causing float error
  • Thinking splice removes all elements
  • Misunderstanding console.log usage
5. Given an array arr of even length, how can you delete the lower middle element?
Example: arr = [2, 4, 6, 8] After deletion, output should be [2, 6, 8].
hard
A. arr.splice(Math.floor(arr.length / 2) - 1, 1);
B. arr.splice(Math.ceil(arr.length / 2), 1);
C. arr.splice(arr.length / 2, 1);
D. arr.splice(arr.length / 2 + 1, 1);

Solution

  1. Step 1: Understand middle elements in even length array

    For even length 4, middle indices are 1 and 2 (0-based). Lower middle is index 1.
  2. Step 2: Calculate index to delete

    Math.floor(4/2) = 2, subtract 1 to get lower middle index = 1.
  3. Step 3: Use splice to delete element at index 1

    arr.splice(1, 1) removes element 4, resulting in [2, 6, 8].
  4. Final Answer:

    arr.splice(Math.floor(arr.length / 2) - 1, 1); -> Option A
  5. Quick Check:

    Lower middle index = floor(length/2)-1 [OK]
Hint: Lower middle = floor(length/2) - 1 for even arrays [OK]
Common Mistakes:
  • Deleting upper middle instead of lower middle
  • Not adjusting index for zero-based arrays
  • Using ceil instead of floor
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