中国科学院计算机算法设计与分析,中国科学院大学计算机算法设计与分析复习指导.pdf...

中国科学院大学计算机算法设计与分析复习指导

1.什么是算法?算法必须满足的五个特性是什么?

算法:一组有穷的规则,规定了解决某一特定类型问题的一系列运算。(有

限指令的集合,遵循它可以完成一个特定的任务).

必须满足的五个特性是(遵循以下五条准则):

1.有穷(限)性

2.确定性

3.可(能)行性

4.输入(n≥0)

5.输出(n≥1)

2 .对算法进行分析分哪两个阶段?各自完成什么任务(分别得到什么结果)?

对一个算法要作出全面的分析可分成两个阶段进行,即:事前分析和事后测

试。

事前分析求出该算法的一个时间界限函数;

事后测试搜集此算法的执行时间和实际占用空间的统计资料。

3 .证明:若f (n)=O (g (n))并且f (n)=O (g (n)),那么f (n)+f (n)=O (max{g (n),

1 1 2 2 1 2 1

g (n)}

2

证明:

根据 f (n)=O(g (n))可知,存在正常数 C ,当n ≥n 时,使得|f (n)|≤C |g (n)|;

1 1 1 0 1 1 1

同理,根据 f (n)=O (g (n))可知,存在正常数 C ,当n ≥n 时,使得|f (n)|≤C |g (n)|

2 2 2 0 2 2 2

当n ≥n 时,|f (n)+f (n)|≤|f (n)|+|f (n)|≤C |g (n)|+C |g (n)| ≤C |g (n)|+C |g (n)|

0 1 2 1 2 1 1 2 2 1 k 2 k

≤ (C +C )|g (n)|, 其中 g (n)=max{g (n),g (n)},k={1,2}

1 2 k k 1 2

当n ≥n 时,取 C= (C +C ),据定义命题得证。

0 1 2

4.如果 f (n)= Θ(g (n))并且 f (n)= Θ(g (n)),下列说法是否正确?试说明之。

1 1 2 2

(a) f (n) +f (n)= Θ(g (n)+ g (n))

1 2 1 2

(b) f (n) +f (n)= Θ(min{g (n), g (n)})

1 2 1 2

(c) f (n) +f (n)= Θ(max{g (n), g (n)})

1 2 1 2

答:(a)和(c)均正确,(b)错误。

(a)正确可以根据定义直接证得。

(b)错误可举反例。例:f (n)= 2n,f (n)=2 n2

1 2

下面证明(c)正确性.

根据上题已经证明 f (n)+f (n)= O (max{g (n),g (n)}),下面只需证明

1 2 1 2

f (n)+f (n)= Ω(max{g (n), g (n)}),即存在正常数 C,使得|f (

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值