Bird
Raised Fist0
Goprogramming~5 mins

For loop basics in Go - Time & Space Complexity

Choose your learning style10 modes available
Time Complexity: For loop basics
O(n)
Understanding Time Complexity

When we use a for loop, the program repeats some steps many times. Understanding how this repetition grows helps us know how fast or slow the program runs.

We want to find out how the number of repeated steps changes as the loop runs more times.

Scenario Under Consideration

Analyze the time complexity of the following code snippet.


for i := 0; i < n; i++ {
    fmt.Println(i)
}
    

This code prints numbers from 0 up to n-1, repeating the print step n times.

Identify Repeating Operations

Identify the loops, recursion, array traversals that repeat.

  • Primary operation: The print statement inside the for loop.
  • How many times: Exactly n times, once for each loop cycle.
How Execution Grows With Input

As n grows, the number of print steps grows the same way. If n doubles, the steps double too.

Input Size (n)Approx. Operations
1010 print steps
100100 print steps
10001000 print steps

Pattern observation: The work grows directly with n, so more input means more steps in a straight line.

Final Time Complexity

Time Complexity: O(n)

This means the time it takes grows in direct proportion to the number of times the loop runs.

Common Mistake

[X] Wrong: "The loop runs instantly no matter how big n is."

[OK] Correct: Each loop step takes some time, so more steps mean more total time. The program does not skip the repeated work.

Interview Connect

Knowing how loops affect time helps you explain your code clearly and shows you understand how programs grow with input size. This skill is useful in many coding situations.

Self-Check

"What if we added a nested loop inside this loop? How would the time complexity change?"

Practice

(1/5)
1. What does a for loop do in Go programming?
easy
A. Stops the program immediately
B. Imports a package
C. Defines a new variable
D. Repeats a block of code while a condition is true

Solution

  1. Step 1: Understand the purpose of a for loop

    A for loop is used to repeat code multiple times based on a condition.
  2. Step 2: Identify the correct description

    Only Repeats a block of code while a condition is true correctly describes repeating code while a condition is true.
  3. Final Answer:

    Repeats a block of code while a condition is true -> Option D
  4. Quick Check:

    For loop = Repeat code [OK]
Hint: For loops repeat code while condition is true [OK]
Common Mistakes:
  • Thinking for loop stops program
  • Confusing for loop with variable declaration
  • Mixing for loop with import statements
2. Which of the following is the correct syntax for a basic for loop in Go?
easy
A. for i := 0; i < 5; i++ { }
B. for (i = 0; i < 5; i++) { }
C. for i in range(5) { }
D. loop i from 0 to 5 { }

Solution

  1. Step 1: Recall Go for loop syntax

    Go uses for init; condition; post { } syntax without parentheses.
  2. Step 2: Compare options

    for i := 0; i < 5; i++ { } matches Go syntax exactly. Options B, C, and D use other languages or invalid syntax.
  3. Final Answer:

    for i := 0; i < 5; i++ { } -> Option A
  4. Quick Check:

    Go for loop = for init; condition; post [OK]
Hint: Go for loops use semicolons, no parentheses [OK]
Common Mistakes:
  • Using parentheses like in C or Java
  • Using Python-style for-in loops
  • Writing 'loop' instead of 'for'
3. What is the output of this Go code?
for i := 1; i <= 3; i++ {
    fmt.Print(i, " ")
}
medium
A. 1 2 3
B. 0 1 2 3
C. 1 2 3 4
D. Syntax error

Solution

  1. Step 1: Analyze loop range and output

    The loop starts at i=1 and runs while i <= 3, so i takes values 1, 2, 3.
  2. Step 2: Understand print output

    Each iteration prints i followed by a space, so output is "1 2 3 "
  3. Final Answer:

    1 2 3 -> Option A
  4. Quick Check:

    Loop prints 1 to 3 with spaces [OK]
Hint: Check loop start, end, and print inside loop [OK]
Common Mistakes:
  • Starting loop at 0 instead of 1
  • Including extra number beyond 3
  • Confusing print with println
4. Identify the error in this Go for loop:
for i := 0; i < 5 i++ {
    fmt.Println(i)
}
medium
A. Using := instead of = for i
B. Missing semicolon between condition and post statement
C. Using parentheses around for loop
D. Missing curly braces

Solution

  1. Step 1: Check for loop syntax parts

    Go requires semicolons between init, condition, and post parts in for loops.
  2. Step 2: Locate missing semicolon

    The code misses a semicolon between i < 5 and i++.
  3. Final Answer:

    Missing semicolon between condition and post statement -> Option B
  4. Quick Check:

    For loop parts separated by semicolons [OK]
Hint: Check semicolons between for loop parts [OK]
Common Mistakes:
  • Omitting semicolons in for loop header
  • Confusing := with = in loop variable
  • Forgetting curly braces
5. How can you use a for loop in Go to sum all even numbers from 2 to 10 inclusive?
hard
A. for i := 2; i < 10; i += 2 { sum += i }
B. for i := 0; i <= 10; i += 2 { sum += i }
C. for i := 1; i <= 10; i++ { if i%2 == 0 { sum += i } }
D. for i := 2; i < 10; i++ { sum += i*2 }

Solution

  1. Step 1: Understand the goal

    We want to add even numbers from 2 to 10 inclusive.
  2. Step 2: Analyze each option

    for i := 2; i < 10; i += 2 { sum += i } increments by 2 starting at 2, but i < 10 so sums only 2+4+6+8 (misses 10).
    for i := 1; i <= 10; i++ { if i%2 == 0 { sum += i } } loops from 1 to 10, checks if number is even, then adds it. This is correct and clear.
    for i := 2; i < 10; i++ { sum += i*2 } incorrectly multiplies i by 2 and sums, which is wrong.
    for i := 0; i <= 10; i += 2 { sum += i } starts at 0, which includes 0 in sum, not desired.
  3. Final Answer:

    for i := 1; i <= 10; i++ { if i%2 == 0 { sum += i } } -> Option C
  4. Quick Check:

    Check even with modulo inside loop [OK]
Hint: Use modulo to check even numbers inside loop [OK]
Common Mistakes:
  • Starting loop at 0 including unwanted numbers
  • Multiplying instead of checking evenness
  • Forgetting to check condition inside loop
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