Non Trivial Runtime
In this lesson, we'll discuss an example with a non-trivial runtime.
We'll cover the following
Sum of powers
Take the code sample below:
for (int i = 1; i <= N; i *= 2)
for (int j = 1; j <= i; j++)
x++;
As discussed earlier, the outer loop runs times. The number of times the inner loop runs is equal to the first loop variable .
- Iteration : Inner loop runs for time
- Iteration : Inner loop runs for times
- Iteration : Inner loop runs for times
- …
- Iteration : Inner loop runs for times
The number of operations forms a Geometric Progression which we will cover in the Number Theory chapter later on. We will use the sum formula directly here:
So, the run-time complexity is actually linear - .
In the next lesson, we’ll learn about the amortized analysis.
Get hands-on with 1400+ tech skills courses.