Bird
Raised Fist0
DSA Goprogramming~10 mins

Array Deletion at Beginning in DSA Go - 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 first element from the slice.

DSA Go
arr := []int{1, 2, 3, 4, 5}
arr = arr[[1]:]
fmt.Println(arr)
Drag options to blanks, or click blank then click option'
A1
B0
C2
D5
Attempts:
3 left
💡 Hint
Common Mistakes
Using 0 as start index does not remove any element.
Using 2 removes first two elements.
2fill in blank
medium

Complete the code to print the new length of the slice after deleting the first element.

DSA Go
arr := []int{10, 20, 30, 40}
arr = arr[1:]
fmt.Println(len([1]))
Drag options to blanks, or click blank then click option'
Aarr
Barr[1:]
Ccap(arr)
Dlen(arr)
Attempts:
3 left
💡 Hint
Common Mistakes
Using len(arr) before slicing.
Using arr[1:] inside len() gives incorrect length.
3fill in blank
hard

Fix the error in the code to delete the first element and print the updated slice.

DSA Go
arr := []int{5, 6, 7, 8}
arr = arr[[1]]
fmt.Println(arr)
Drag options to blanks, or click blank then click option'
A1
B1:
C:1
D0:
Attempts:
3 left
💡 Hint
Common Mistakes
Using arr[1] returns an int, not a slice.
Using arr[:1] returns first element only.
4fill in blank
hard

Complete the code to delete the first two elements and print the updated slice.

DSA Go
arr := []int{9, 8, 7, 6, 5}
arr = arr[[1]:]
fmt.Println(arr)
Drag options to blanks, or click blank then click option'
A2
B3
C:
D1
Attempts:
3 left
💡 Hint
Common Mistakes
Using arr[:2] slices first two elements, not removes them.
Using arr[3] accesses single element.
5fill in blank
hard

Fill both blanks to delete the first element, append 100, and print the slice.

DSA Go
arr := []int{1, 2, 3}
arr = arr[[1]:]
arr = append(arr, [2])
fmt.Println(arr)
Drag options to blanks, or click blank then click option'
A1
B:
C100
D0
Attempts:
3 left
💡 Hint
Common Mistakes
Using arr[0:] does not remove any element.
Appending without slicing keeps old first element.

Practice

(1/5)
1. What happens to the array [10, 20, 30, 40] after deleting the first element at the beginning?
easy
A. [40]
B. [10, 20, 30]
C. [20, 30, 40]
D. [30, 40]

Solution

  1. Step 1: Understand deletion at beginning

    Deleting the first element removes the element at index 0, which is 10.
  2. Step 2: Shift remaining elements left

    The remaining elements 20, 30, 40 shift left to fill the gap, resulting in [20, 30, 40].
  3. Final Answer:

    [20, 30, 40] -> Option C
  4. Quick Check:

    Remove first element = [20, 30, 40] [OK]
Hint: Remove first element, shift left, rest remain [OK]
Common Mistakes:
  • Removing last element instead of first
  • Not shifting elements left after deletion
  • Leaving the first element in place
2. Which of the following Go code snippets correctly deletes the first element from a slice arr?
easy
A. arr = append(arr, 0)
B. arr = arr[1:]
C. arr = arr[:len(arr)-1]
D. arr = arr[0:]

Solution

  1. Step 1: Understand slice slicing syntax

    In Go, arr[1:] creates a slice from index 1 to end, effectively removing the first element.
  2. Step 2: Check other options

    arr[:len(arr)-1] removes last element, append(arr, 0) adds element, arr[0:] returns full slice.
  3. Final Answer:

    arr = arr[1:] -> Option B
  4. Quick Check:

    Slice from index 1 removes first element [OK]
Hint: Use arr = arr[1:] to drop first element [OK]
Common Mistakes:
  • Using arr[:len(arr)-1] deletes last element
  • Appending instead of slicing
  • Using arr[0:] which does not delete anything
3. What is the output of the following Go code?
arr := []int{5, 10, 15, 20}
arr = arr[1:]
fmt.Println(arr)
medium
A. [5 10 15 20]
B. []
C. [15 20]
D. [10 15 20]

Solution

  1. Step 1: Initial array elements

    arr starts as [5, 10, 15, 20].
  2. Step 2: Slice from index 1

    arr = arr[1:] removes first element 5, resulting in [10, 15, 20].
  3. Final Answer:

    [10 15 20] -> Option D
  4. Quick Check:

    arr[1:] drops first element [OK]
Hint: arr[1:] slices from second element onward [OK]
Common Mistakes:
  • Printing original array without slicing
  • Confusing arr[:1] with arr[1:]
  • Expecting output with commas instead of spaces
4. The following Go code tries to delete the first element from arr. What is the error?
arr := []int{1, 2, 3, 4}
arr = arr[0:len(arr)]
fmt.Println(arr)
medium
A. No deletion happens; array remains unchanged
B. Syntax error due to incorrect slicing
C. Runtime panic due to out of range slice
D. Deletes last element instead of first

Solution

  1. Step 1: Analyze slicing range

    arr[0:len(arr)] returns the full slice unchanged.
  2. Step 2: Check effect on array

    Since no elements are removed, arr remains [1, 2, 3, 4].
  3. Final Answer:

    No deletion happens; array remains unchanged -> Option A
  4. Quick Check:

    Slicing full range keeps array same [OK]
Hint: arr[0:len(arr)] returns full slice, no deletion [OK]
Common Mistakes:
  • Assuming slicing deletes first element
  • Expecting runtime error from slicing
  • Confusing slicing syntax with deletion
5. Given a slice arr := []int{7, 14, 21, 28, 35}, write the Go code to delete the first two elements and print the resulting slice.
hard
A. arr = arr[2:] fmt.Println(arr)
B. arr = arr[:len(arr)-2] fmt.Println(arr)
C. arr = arr[1:] fmt.Println(arr)
D. arr = append(arr[:2], arr[2:]...) fmt.Println(arr)

Solution

  1. Step 1: Understand deletion of first two elements

    To delete first two elements, slice from index 2 to end: arr[2:].
  2. Step 2: Verify other options

    arr[:len(arr)-2] removes last two elements, arr[1:] removes only first element, append(arr[:2], arr[2:]...) reconstructs the original slice.
  3. Final Answer:

    arr = arr[2:] fmt.Println(arr) -> Option A
  4. Quick Check:

    Slice from index 2 removes first two elements [OK]
Hint: Use arr = arr[2:] to remove first two elements [OK]
Common Mistakes:
  • Removing last elements instead of first
  • Removing only one element instead of two
  • Using append unnecessarily for simple slicing
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