算法导论 3-4 证明与反驳
作者:互联网
(渐进记号的性质)假设f(n)和g(n)为渐近正函数。证明或反驳下面的每个猜测。
a. f(n)=O(g(n))蕴含g(n)=O(f(n))。
b. f(n)+g(n)=θ(min(f(n), g(n))。
c. f(n)=O(g(n))蕴含lg(f(n))=O(lg(g(n))),其中对所有足够大的n,有
且
。
d. f(n)=O(g(n))蕴含
。
e. f(n)=
。
f. f(n)=O(g(n))蕴含g(n)=Ω(f(n))。
g. f(n)=
。
h. f(n)+o(f(n))=
。
解答:
a. f(n)=O(g(n))蕴含g(n)=O(f(n))。 错误。
举例 ,
。
b. f(n)+g(n)=θ(min(f(n), g(n))。错误。
举例,
,
c. f(n)=O(g(n))蕴含lg(f(n))=O(lg(g(n))),其中对所有足够大的n,有
且
。正确。
根据O定义:
O(g(n)) = { f(n): 存在正常量c和,使得对所有
,有
}
由不等式可得
。
d. f(n)=O(g(n))蕴含
。正确。
根据O定义:
O(g(n)) = { f(n): 存在正常量c和,使得对所有
,有
}
由不等式可得
e. f(n)=
。错误。
举反例,取,则
。已知n>0时,
。所以命题e不成立。
f. f(n)=O(g(n))蕴含g(n)=Ω(f(n))。
从O的定义来分析该问题,O定义如下:
O(g(n)) = { f(n): 存在正常量c和,使得对所有
,有
}
Ω(g(n)) = { f(n): 存在正常量c和,使得对所有
,有
}
g. f(n)=
。错误。
举反例。取,则
,由于
,所以命题不成立。
h. f(n)+o(f(n))=
。正确。
根据o的定义,我们可以得到
存在正常量c和,使得对于所有
,有
,
另外,由于,可得
。
因此我们可以得到
,因此符合θ函数的定义。故命题成立。
标签:lg,7D%,使得,所有,导论,算法,蕴含,反驳,定义 来源: https://blog.csdn.net/madaxin/article/details/111889506