3.1-1
证明:
原问题可转化为如下两个情况:
1、当
n
>
n
0
n>n_0
n>n0时,
f
(
n
)
>
g
(
n
)
f(n)>g(n)
f(n)>g(n),有
f
(
n
)
=
Θ
(
f
(
n
)
+
g
(
n
)
)
f(n)=\Theta(f(n)+g(n))
f(n)=Θ(f(n)+g(n))成立;
2、当
n
>
n
0
n>n_0
n>n0时,
f
(
n
)
<
g
(
n
)
f(n)<g(n)
f(n)<g(n),有
g
(
n
)
=
Θ
(
f
(
n
)
+
g
(
n
)
)
g(n)=\Theta(f(n)+g(n))
g(n)=Θ(f(n)+g(n))成立;
由于,
f
(
n
)
f(n)
f(n)与
g
(
n
)
g(n)
g(n)等价,因此,证明其中一种情况即可;
当
n
>
n
0
n>n_0
n>n0时,
f
(
n
)
>
g
(
n
)
f(n)>g(n)
f(n)>g(n)
根据
Θ
(
f
(
n
)
+
g
(
n
)
)
\Theta(f(n)+g(n))
Θ(f(n)+g(n))定义有,
c
1
(
f
(
n
)
+
g
(
n
)
)
≤
f
(
n
)
≤
c
2
(
f
(
n
)
+
g
(
n
)
)
c
1
≤
f
(
n
)
f
(
n
)
+
g
(
n
)
≤
c
2
c_1(f(n)+g(n))\leq f(n)\leq c_2(f(n)+g(n))\\ c_1\leq \frac{f(n)}{f(n)+g(n)}\leq c_2
c1(f(n)+g(n))≤f(n)≤c2(f(n)+g(n))c1≤f(n)+g(n)f(n)≤c2
根据
f
(
n
)
>
g
(
n
)
f(n)>g(n)
f(n)>g(n)知:
1
2
<
f
(
n
)
f
(
n
)
+
g
(
n
)
<
1
\frac{1}{2}< \frac{f(n)}{f(n)+g(n)}< 1
21<f(n)+g(n)f(n)<1
因此,在
n
>
n
0
n>n_0
n>n0时,
f
(
n
)
>
g
(
n
)
f(n)>g(n)
f(n)>g(n)情况下,总有
∃
c
1
≤
1
2
\exists c_1\leq\frac{1}{2}
∃c1≤21,
c
2
≥
1
c_2\geq1
c2≥1使得不等式
c
1
≤
f
(
n
)
f
(
n
)
+
g
(
n
)
≤
c
2
c_1\leq \frac{f(n)}{f(n)+g(n)}\leq c_2
c1≤f(n)+g(n)f(n)≤c2成立。
因此,情况1得证。
3.1-2
证明:
根据定义只需证明:当
n
>
n
0
n>n_0
n>n0时,
∃
c
1
,
c
2
\exists c_1,c_2
∃c1,c2使得不等式
c
1
n
b
≤
(
n
+
b
)
b
≤
c
2
n
b
c_1n^{b}\leq (n+b)^{b}\leq c_2n^{b}
c1nb≤(n+b)b≤c2nb成立。
c
1
n
b
≤
(
n
+
b
)
b
≤
c
2
n
b
c
1
≤
(
n
+
b
)
b
n
b
≤
c
2
c
1
≤
(
1
+
a
n
)
b
≤
c
2
c_1n^{b}\leq (n+b)^{b}\leq c_2n^{b} \\ c_1\leq \frac{(n+b)^{b}}{n^{b}}\leq c_2 \\ c_1\leq (1+\frac{a}{n})^{b}\leq c_2
c1nb≤(n+b)b≤c2nbc1≤nb(n+b)b≤c2c1≤(1+na)b≤c2
令
f
(
x
)
=
(
1
+
a
x
)
b
f(x)=(1+\frac{a}{x})^{b}
f(x)=(1+xa)b,则
f
′
(
x
)
=
b
(
1
+
a
x
)
b
−
1
∗
(
−
a
x
2
)
f'(x)=b(1+\frac{a}{x})^{b-1}*(-\frac{a}{x^2})
f′(x)=b(1+xa)b−1∗(−x2a)
由其导函数知,当
x
≥
1
x\geq 1
x≥1的情况下,
f
′
(
x
)
<
0
f'(x)<0
f′(x)<0即,在
x
∈
[
1
,
+
∞
]
x\in[1, +\infty]
x∈[1,+∞]上恒为单调递减函数。
因此
(
1
+
a
n
)
b
(1+\frac{a}{n})^{b}
(1+na)b在
n
=
1
,
2
,
3...
n
n=1,2,3...n
n=1,2,3...n的情况下的最小值为:
l
i
m
n
→
+
∞
=
(
1
+
a
n
)
b
=
1
lim_{n \rightarrow+\infty}=(1+\frac{a}{n})^{b}=1
limn→+∞=(1+na)b=1;
最大值为:
(
1
+
a
)
b
(1+a)^b
(1+a)b;
在
n
>
n
0
n>n_0
n>n0时,
c
1
≤
1
,
c
2
≥
(
1
+
a
)
b
c_1\leq 1,c_2\geq(1+a)^b
c1≤1,c2≥(1+a)b的情况下,不等式
c
1
n
b
≤
(
n
+
b
)
b
≤
c
2
n
b
c_1n^{b}\leq (n+b)^{b}\leq c_2n^{b}
c1nb≤(n+b)b≤c2nb成立。
得证
3.1-3
O ( n 2 ) O(n^2) O(n2)表示的是上界,表示只有上限,并无下限,因此"至少"这个词导致这个表述无意义。
3.1-4
2
n
+
1
=
O
(
2
n
)
2^{n+1}=O(2^n)
2n+1=O(2n)成立;
证明:
要证明
2
n
+
1
=
O
(
2
n
)
2^{n+1}=O(2^n)
2n+1=O(2n),根据定义有,
∃
n
>
n
0
,
c
\exists n>n_0,c
∃n>n0,c使得不等式
0
≤
2
n
+
1
≤
c
2
n
0\leq 2^{n+1}\leq c2^n
0≤2n+1≤c2n成立;
0
≤
2
n
+
1
≤
c
2
n
0
≤
2
∗
2
n
≤
c
2
n
0\leq 2^{n+1}\leq c2^n \\ 0\leq 2*2^{n}\leq c2^n
0≤2n+1≤c2n0≤2∗2n≤c2n
由上可知,当
n
n
n为任意范围内值,
c
≥
2
c\geq2
c≥2时,不等式
0
≤
2
n
+
1
≤
c
2
n
0\leq 2^{n+1}\leq c2^n
0≤2n+1≤c2n成立。
得证。
2
2
n
=
O
(
2
n
)
2^{2n}=O(2^n)
22n=O(2n)不成立;
证明:
若成立,那么根据定义有:
∃
n
>
n
0
,
c
\exists n>n_0,c
∃n>n0,c使得不等式
0
≤
2
2
n
≤
c
2
n
0\leq 2^{2n}\leq c2^n
0≤22n≤c2n成立;
0
≤
2
2
n
≤
c
2
n
0
≤
2
n
∗
2
n
≤
c
2
n
0\leq 2^{2n}\leq c2^n \\ 0\leq 2^{n}*2^{n}\leq c2^n
0≤22n≤c2n0≤2n∗2n≤c2n
因此需要
n
≥
2
n
n\geq2^n
n≥2n,但是n是变量,因此,不成立。
3.1-5
证明:
必要性:
由等式
f
(
n
)
=
Θ
(
g
(
n
)
)
f(n)=\Theta(g(n))
f(n)=Θ(g(n))可得,
∃
c
1
,
c
2
,
n
>
n
0
,
\exists c_1,c_2,n>n_0,
∃c1,c2,n>n0,使得不等式
0
≤
c
1
g
(
n
)
≤
f
(
n
)
≤
c
2
g
(
n
)
0 \leq c_1g(n) \leq f(n) \leq c_2g(n)
0≤c1g(n)≤f(n)≤c2g(n)成立,因此有:
0
≤
c
1
g
(
n
)
≤
f
(
n
)
0 \leq c_1g(n) \leq f(n)
0≤c1g(n)≤f(n)成立,
0
≤
f
(
n
)
≤
c
2
g
(
n
)
0\leq f(n) \leq c_2g(n)
0≤f(n)≤c2g(n)成立。
所以有:
∃
c
1
,
n
>
n
0
,
\exists c_1,n>n_0,
∃c1,n>n0,使得不等式
0
≤
c
1
g
(
n
)
≤
f
(
n
)
0 \leq c_1g(n) \leq f(n)
0≤c1g(n)≤f(n)成立,即:
f
(
n
)
=
Ω
(
g
(
n
)
)
f(n)=\Omega(g(n))
f(n)=Ω(g(n))
∃
c
2
,
n
>
n
0
,
\exists c_2,n>n_0,
∃c2,n>n0,使得不等式
0
≤
f
(
n
)
≤
c
2
g
(
n
)
0\leq f(n) \leq c_2g(n)
0≤f(n)≤c2g(n)成立,即:
f
(
n
)
=
O
(
g
(
n
)
)
f(n)=O(g(n))
f(n)=O(g(n))
充分性:
由
f
(
n
)
=
Ω
(
g
(
n
)
)
f(n)=\Omega(g(n))
f(n)=Ω(g(n))可得,
∃
c
1
,
n
>
n
0
,
\exists c_1,n>n_0,
∃c1,n>n0,使得不等式
0
≤
c
1
g
(
n
)
≤
f
(
n
)
0 \leq c_1g(n) \leq f(n)
0≤c1g(n)≤f(n)成立;
由
f
(
n
)
=
O
(
g
(
n
)
)
f(n)=O(g(n))
f(n)=O(g(n))可得,
∃
c
2
,
n
>
n
0
,
\exists c_2,n>n_0,
∃c2,n>n0,使得不等式
0
≤
f
(
n
)
≤
c
2
g
(
n
)
0\leq f(n) \leq c_2g(n)
0≤f(n)≤c2g(n)成立;
因此
∃
c
1
,
c
2
,
n
>
n
0
,
\exists c_1,c_2,n>n_0,
∃c1,c2,n>n0,使得不等式
0
≤
c
1
g
(
n
)
≤
f
(
n
)
≤
c
2
g
(
n
)
0 \leq c_1g(n) \leq f(n) \leq c_2g(n)
0≤c1g(n)≤f(n)≤c2g(n)成立,即
f
(
n
)
=
Θ
(
g
(
n
)
)
f(n)=\Theta(g(n))
f(n)=Θ(g(n))
3.1-6
这个题类似于3.1-5。
3.1-7
假设
o
(
g
(
n
)
)
⋂
ω
(
g
(
n
)
)
≠
∅
o(g(n))\bigcap \omega(g(n))\neq \empty
o(g(n))⋂ω(g(n))=∅
那么一定存在一个
f
(
n
)
:
f
(
n
)
=
o
(
g
(
n
)
)
,
f
(
n
)
=
ω
(
g
(
n
)
)
f(n):f(n)=o(g(n)),f(n)=\omega(g(n))
f(n):f(n)=o(g(n)),f(n)=ω(g(n)),
根据定义有:
∃
n
>
n
1
,
∀
c
1
\exist n>n_1,\forall c_1
∃n>n1,∀c1使得不等式
0
≤
f
(
n
)
<
c
1
g
(
n
)
0\leq f(n) <c_1g(n)
0≤f(n)<c1g(n)成立;
∃
n
>
n
2
,
∀
c
2
\exist n>n_2,\forall c_2
∃n>n2,∀c2使得不等式
0
≤
c
2
g
(
n
)
<
f
(
n
)
0\leq c_2g(n) < f(n)
0≤c2g(n)<f(n)成立;
由于
∃
c
1
<
c
2
\exist c_1<c_2
∃c1<c2使得上述不等式矛盾,因此假设错误。
3.1-8
Ω
(
g
(
n
,
m
)
)
=
{
f
(
n
,
m
)
:
∃
正
常
量
c
,
n
0
,
m
0
,
使
得
对
所
有
n
≥
n
0
或
m
≥
m
0
,
有
0
≤
c
g
(
n
,
m
)
≤
f
(
n
,
m
)
}
\Omega(g(n,m))=\{f(n,m):\exist正常量c,n_0,m_0,使得对所有n\geq n_0或m\geq m_0,有0\leq cg(n,m)\leq f(n,m)\}
Ω(g(n,m))={f(n,m):∃正常量c,n0,m0,使得对所有n≥n0或m≥m0,有0≤cg(n,m)≤f(n,m)}
Θ
(
g
(
n
,
m
)
)
=
{
f
(
n
,
m
)
:
∃
正
常
量
c
1
,
c
2
,
n
0
,
m
0
,
使
得
对
所
有
n
≥
n
0
或
m
≥
m
0
,
有
0
≤
c
1
g
(
n
,
m
)
≤
f
(
n
,
m
)
≤
c
2
g
(
n
,
m
)
}
\Theta(g(n,m))=\{f(n,m):\exist正常量c_1,c_2,n_0,m_0,使得对所有n\geq n_0或m\geq m_0,有0\leq c_1g(n,m)\leq f(n,m)\leq c_2g(n,m)\}
Θ(g(n,m))={f(n,m):∃正常量c1,c2,n0,m0,使得对所有n≥n0或m≥m0,有0≤c1g(n,m)≤f(n,m)≤c2g(n,m)}
博客围绕算法复杂度证明展开,包含多种情况。如证明f(n)=Θ(f(n)+g(n))、(n+b)b与nb关系、2n+1和22n与2n的复杂度关系等,还涉及O、Ω、Θ等复杂度符号间的等价性证明及集合关系证明。

被折叠的 条评论
为什么被折叠?



