算法导论作业3.1

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))c1f(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} c121 c 2 ≥ 1 c_2\geq1 c21使得不等式 c 1 ≤ f ( n ) f ( n ) + g ( n ) ≤ c 2 c_1\leq \frac{f(n)}{f(n)+g(n)}\leq c_2 c1f(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)bc2nb成立。
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)bc2nbc1nb(n+b)bc2c1(1+na)bc2
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)b1(x2a)
由其导函数知,当 x ≥ 1 x\geq 1 x1的情况下, 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 c11,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)bc2nb成立。
得证

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 02n+1c2n成立;
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 02n+1c2n022nc2n
由上可知,当 n n n为任意范围内值, c ≥ 2 c\geq2 c2时,不等式 0 ≤ 2 n + 1 ≤ c 2 n 0\leq 2^{n+1}\leq c2^n 02n+1c2n成立。
得证。
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 022nc2n成立;
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 022nc2n02n2nc2n
因此需要 n ≥ 2 n n\geq2^n n2n,但是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) 0c1g(n)f(n)c2g(n)成立,因此有: 0 ≤ c 1 g ( n ) ≤ f ( n ) 0 \leq c_1g(n) \leq f(n) 0c1g(n)f(n)成立, 0 ≤ f ( n ) ≤ c 2 g ( n ) 0\leq f(n) \leq c_2g(n) 0f(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) 0c1g(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) 0f(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) 0c1g(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) 0f(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) 0c1g(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) 0f(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) 0c2g(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,使nn0mm00cg(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,使nn0mm00c1g(n,m)f(n,m)c2g(n,m)}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值