For loop in Javascript - Time & Space Complexity
We want to understand how the time a for loop takes changes as we increase the number of times it runs.
How does the work grow when the loop runs more times?
Analyze the time complexity of the following code snippet.
for (let i = 0; i < n; i++) {
console.log(i);
}
This code prints numbers from 0 up to n-1, running the loop n times.
Identify the loops, recursion, array traversals that repeat.
- Primary operation: The loop runs and prints a number each time.
- How many times: Exactly n times, where n is the input size.
As n grows, the number of times the loop runs grows the same way.
| Input Size (n) | Approx. Operations |
|---|---|
| 10 | 10 prints |
| 100 | 100 prints |
| 1000 | 1000 prints |
Pattern observation: The work grows directly with n; if n doubles, work doubles.
Time Complexity: O(n)
This means the time taken grows in a straight line with the number of loop runs.
[X] Wrong: "The loop runs faster as n gets bigger because computers are fast."
[OK] Correct: Even though computers are fast, the loop still does more work when n is bigger, so it takes more time.
Understanding how loops grow with input size helps you explain your code clearly and shows you know how to think about efficiency.
"What if we added a second nested for loop inside the first? How would the time complexity change?"