首页 > 编程语言 > 详细

《算法导论》第3章部分题目解答

时间:2019-12-31 11:58:18      阅读:79      评论:0      收藏:0      [点我收藏+]

第3章 函数的增长

3.1 渐进记号

3.1-1

\(\because\)f(n)与g(n)为渐进非负函数
\(\therefore \exists n_0\),当n>\(n_0\)时,
\(0\leq f(n)\leq max(f(n),g(n)), 0\leq g(n)\leq max(f(n),g(n))\)
两式相加,得\(0\leq (f(n)+g(n))/2\leq max(f(n),g(n))\)
\(max(f(n),g(n))\leq f(n)+g(n))\)
\(\therefore 0\leq (f(n)+g(n))/2\leq max(f(n),g(n))\leq f(n)+g(n)\)
根据定义有 max(f(n),g(n)) = \(\Theta (f(n)+g(n))\)

3.1-5

根据定义,要使得f(n) = \(\Theta (g(n))\)
需要\(\exists c_1,c_2,n_0\)使得对于所有 \(n\geq n_0\),有\(0\leq c_1g(n)\leq f(n) \leq c_2g(n)\)
要使得\(f(n) = O(g(n)), f(n) = \Omega(g(n))\),分别有
\(\exists c3,n_1\)使得对于所有\(n\geq n_1\),有 \(f(n)\leq c_3f(n)\)
\(\exists c4,n_2\)使得对于所有\(n\geq n_2\),有 \(f(n)\leq c_4f(n)\)

充分性:

\(f(n) = O(g(n)), f(n) = \Omega(g(n))\)同时满足
\(n\geq max(n_1,n_2)\)时,有\(0\leq c_4g(n)\leq f(n) \leq c_3g(n)\)
根据定义,有f(n) = \(\Theta (g(n))\)

必要性:

若$f(n) = \(\Theta (g(n))\)
\(n\geq n_0\)时,有 \(0\leq c_1g(n)\leq f(n)\leq c_2g(n)\)
\(0\leq c_1g(n)\leq f(n), f(n)\leq c_2g(n)\)
根据定义,有f(n) = O(g(n)) 且 f(n) = \(\Omega (g(n))\)

3-1

d.

\(lim_{n->\infty }\frac{p(n)}{n^k} = lim_{n->\infty }\frac{\sum^d_{i=0}a_in^i}{n^k} = lim_{n->\infty }\frac{d!a_d}{n^k} = 0\)
\(\therefore \exists n_0,\)\(n>n_0\)时,对于任意c>0,有\(cn^k>\sum ^d_{i=0}a_in^i\)
根据定义,有\(p(n) = o(n^k)\)

3-2

序号 A B O o \(\Omega\) \(\omega\) \(\Theta\)
a. \(lg^kn\) \(n^\varepsilon\) x x o o x
b. \(n^k\) c^n x x o o x
c. \(\sqrt{n}\) \(c^n\) x x x x x
d. \(2^n\) \(2^{n/2}\) o o x x x
e. \(n^{lgc}\) \(c^{lgn}\) o x o x o
f. lg(n!) \(lg(n^n)\) o x o x o

a,b,c,d显然

e:

\(lim_{n->\infty}\frac{ n^{lgc} }{ c^{lgn} }\)
=\(lim_{n->\infty}\frac{n^{log_nc/log_n10}}{c^{lgn}}\)
=\(lim_{n->\infty}\frac{n^{1/log_n10}}{c^{lgn}}\)
= 1
所以 \(n^{lgc} = \Theta(c^{lgn})\)

f:

《算法导论》第3章部分题目解答

原文:https://www.cnblogs.com/baoliang/p/12123140.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!