Examples Related to Time Complexities
Let's dive deeper into the time complexity analysis by looking into some examples in this lesson.
Letās better understand the time complexity by going through a few examples.
Example 1: for
loop
The case below is a for loop. We have a time complexity of .
Go (1.6.2)
package mainimport("fmt")func fun1(n int) int {m := 0for i := 0; i < n; i++ {m += 1}return m}func main() {fmt.Println("N = 100, Number of instructions O(n) ::", fun1(100))}
The statement on line 10
takes constant time. Hence, it doesnāt affect the time complexity of the loop.
Example 2: Nested for
loop
In this case, we have a nested loop where the total number of loops is 2. Both loops run n times. According to formula , its time complexity is .
Go (1.6.2)
package mainimport("fmt")func fun2(n int) int {m := 0for i := 0; i < n; i++ {for j := 0; j < n; j++ {m += 1}}return m}func main() {fmt.Println("N = 100, Number of instructions O(n^2) ::", fun2(100))}
Example 3: Arithmetic series
This example shows that the inner loop iterates times, and the outer loop iterates times.
The exact number of steps will go the same way as those of the arithmetic series. In this case, the time complexity will be: = ...