Solutions to Exercises 2 on Time Complexity and Big-Oh
Dr.Mehreen Saeed
1. You can apply Rule 4 here
Statement Number of times executed
i=1 1 i<=n n+1 ++i n cout<<i n Sum =0 n j=1 n j<=i ½ n(n+1) + n = ½ n2 + 3/2 n j++ ½ n(n+1) = ½ n2 + ½ n Sum++ ½ n(n+1) = ½ n2 + ½ n cout<<i ½ n(n+1) = ½ n2 + ½ n cout << Sum n Total 2n2 + 9n + 2 T(n) = 2n2 + 9n + 2 , T(n) = O(n2)
2. You can apply Rule 5 here
Statement Number of times executed
sum=0 1 i=1 1 i<=n log2n + 1 i=i*2 log2n cout<<i log2n cout << sum log2n j=1 log2n j<=i 2n-1 + log2n j++ 2n-1 cout<<j 2n-1 cout << ‘*’ 2n-1 sum++ 2n-1 sum=0 log2n Total 10n+7log2n-2 T(n) = 10n+7log2n-2, T(n) = O(n) 3. Which rule will you apply here?