Algorithms Homework - Fall 2000: A + (B CH 2) N A
Algorithms Homework - Fall 2000: A + (B CH 2) N A
2.1-1 Let f(n) and g(n) be asymptotically nonnegative functions. Using the basic
definition of notation, prove that max(f(n), g(n)) = ( f(n) + g(n)).
max(f(n), g(n)) c2(f(n) + g(n)), since f(n) and g(n) are asymptotically non-negative.
Therefore, c2 = 1 and n0 = 1
max(f(n), g(n)) ½ (f(n) + g(n)),
since the maximum value of ½ (f(n) + g(n)) = max(f(n), g(n))
Therefore, c1 = ½
2.1-2 Show that for any real constants a and b, where b > 0,
(n + a)b = (nb)
2.2-1 Show that if f(n) and g(n) are monotonically increasing functions, then so are
the functions f(n) + g(n) and f(g(n)), and if f(n) and g(n) are in addition nonnegative,
then f(n) * g(n) is monotonically increasing.
If two monotonically increasing functions are added together, the sum must also be
monotonically increasing since there is nothing in the sum that decreases either of them.
Since g(n) is monotonically increasing, once it is evaluated at any given point and a value
is produced and this value is fed into another monotonically increasing function, f(n), the
result must be monotonically increasing by the definition of a monotonically increasing
function.
If the results of two functions are the same sign, then the product of these results will be
positive. Since both f(n) and g(n) are non-negative and monotonically increasing, the
product of these two must also be monotonically increasing because there is nothing to
decrease them.
PROBLEMS
2-1 Asymptotic behavior of polynomials
Let p(n) = di=0 aini
where ad 0, be a degree-d polynomial in n, and let k be a constant.
Use the definitions of the asymptotic notations to prove the following properties.
Alternatively:
p(n) d(adnd), for some large n
Therefore, by setting c = d
d(adnd) = O(nd)
Therefore, since k d
d(adnd) = O(nk)
Therefore, since p(n) d(adnd)
p(n) = O(nk)
FALSE.
Let f(n) = n2 and g(n) = n3
Then, f(n) = O(g(n)), but g(n) O(f(n))
b) f(n) + g(n) = (min(f(n), g(n))).
FALSE.
Let f(n) = n2 and g(n) = n3
Then min(f(n), g(n)) = n2
If f(n) + g(n) = n2 + n3 = ( n2) = (min(f(n), g(n))), then
c1 and c2 0 and n0 0 such that 0 c1n2 n2 + n3 c2n2, for all n n0
But, 1 + n c2, for sufficiently large n
So, this is a contradiction.
TRUE.
Given: f(n) cg(n)
Show: lg(f(n)) clg(g(n))
lg(f(n)) clg(g(n)) = lg(f(n)) lg(g(n))c
Since we are given that lg(g(n)) 0, then c must be positive.
Therefore, lg(g(n))c must grow faster than lg(f(n)) as n goes to , and is therefore an
asymptotic upper bound.
FALSE.
Let f(n) = n and g(n) = n/2,
then f(n) = O(g(n)), with c 2
However, limn 2n/2/2n 1
Therefore, 2f(n) O(2g(n))
e) f(n) = O((f(n))2).
FALSE.
Let f(n) = 1/n2
Since, 1/n2 c(1/n2)2 = c/n4 for sufficiently large n,
f(n) O((f(n))2)
TRUE.
By transpose symmetry.
f(n) = O(g(n)) implies g(n) = (f(n)) means that
f(n) c(g(n)) implies g(n) c(f(n))
If, f(n) c(g(n)), then, 1/c f(n) g(n), which means that g(n) c(f(n))
g) f(n) = (f(n/2)).
FALSE.
f(n) = (f(n/2)) means that
c1 and c2 0 and n0 0 such that 0 c1f(n/2) f(n) c2f(n/2), for all n n0
Let f(n) = 2n, then
c1 and c2 0 and n0 0 such that 0 c12n/2 2n c22n/2, for all n n0
However, 2n grows faster than 2n/2 for sufficiently large n.
Therefore, the constants c1 and c2 do not exist.