Data Structures, Algorithms, & Applications in C++
Chapter 3, Exercise 9
- (a)
-
5n2 - 6n < 5n2 for
n >= 1. So, 5n2 - 6n =
O(n2). Also, 5n2 - 6n >=
5n2 - n2 =
4 n2 for n >= 6.
So, 5n2 - 6n = Omega(n2).
Consequently, 5n2 - 6n = Theta(n2).
- (c)
-
f(n) = 2n22n + n log n <
2n22n + n2 <
3n22n for n >= 1.
So, f(n) = O(n22n).
Also, f(n) >= 2n22n for
n >= 1. So, f(n) =
Omega(n22n). Therefore, f(n) =
Theta(n22n).
- (e)
-
f(n) = sum from (i=0) to n i3 <=
sum from (i=1) to n n3 = n4
for n >= 1. So, f(n) =
O(n4).
Also, f(n) >= sum from (i=ceil(n/2)) to n i3
>= sum from (i=ceil(n/2)) to n (n/2)3
= (n - ceil(n/2) + 1)(n/2)3 >= n4/16
for n >= 1.
So, f(n) = Omega(n4). As a result,
f(n) = Theta(n4).
- (g)
-
f(n) = n3 + 106n2
<= n3 + n3
= 2 n3 for n >= 106.
Also, f(n) < n3 for n > 0.
So, f(n) = Theta(n3).