算法设计与分析第二章课后作业

第二章

一.单选题
1

【单选题】给定字符集{a,b,c,d,e,f},若用定长码编码,至少需要几位二进制位()

A、

1位
B、

2位
C、

3位
D、

4位

正确答案: C 我的答案:C
得分: 5.0分
2

【单选题】给定字符集及其出现的频率:{a:90%,b:5%,c:3%,d:2%},下述哪种编码是最优前缀码()?

A、

a:1,b:01,c:000,d:001
B、

a:0,b:01,c:000,d:001
C、

a:1,b:10,c:000,d:001
D、

a:0,b:10,c:000,d:001

正确答案: A 我的答案:A
得分: 5.0分
3

【单选题】调度问题:有n个客户带来n项任务,每项加工时间已知,设为ti,i=1,2,…,n。从0时刻开始,陆续安排到一台机器上加工。每个任务的完成时间是从0时刻到该任务加工完成的时间。为了使尽可能多的客户满意,我们希望找到是的总等待时间最少的调度方案。该问题的贪心策略是( )

A、

加工时间长的优先安排
B、

加工时间短的优先安排
C、

完成时间早的优先安排
D、

等待时间长的优先安排

正确答案: B 我的答案:B
得分: 5.0分
4

【单选题】单源最短路径问题算法中,V是图的顶点集,S记录已确定最短路径长度的点,算法的贪心策略是()

A、

选择特殊路径长度最短的,把相连的V-S中的点加入到S中,检查新增加的特殊路径,若比原来的短,则优化。
B、

选择特殊路径长度最短的,把相连的S中的点加入到V-S中,检查新增加的特殊路径,若比原来的短,则优化。
C、

选择路径长度最短的,把相连的点加入到S中,检查新增加的路径,若比原来的短,则优化。
D、

以上都不对

正确答案: A 我的答案:A
得分: 5.0分
5

【单选题】背包问题: n个物品和1个背包。对物品i,其价值为vi,重量为wi,背包的容量为W。如何选取物品装入背包,使背包中所装入的物品的总价值最大?物品可以分割。该问题的贪心策略是()

A、

重量小的优先装入背包
B、

体积小的优先装入背包
C、

价值大的优先装入背包
D、

单位重量的价值大的优先装入背包

正确答案: D 我的答案:D
得分: 5.0分
6

【单选题】单源最短路径问题算法中,把出发点定为源点,根据该算法思想,与源点在同一集合中的点是()

A、

确定了最短路径的点
B、

尚未确定最短路径的点
C、

不明确是哪些点
D、

以上都不对()

正确答案: A 我的答案:A
得分: 5.0分
7

【单选题】单源最短路径问题算法中,采用了前驱pre数组,用于记录()

A、

当前最短路径长度
B、

图中每个顶点的前驱
C、

特殊路径
D、

以上都不对

正确答案: B 我的答案:B
得分: 5.0分
8

关于Prim算法和Kruskal算法的比较,正确的是

A、

两个算法的时间复杂度相同
B、

Prim算法适用于稠密图,Kruskal算法适用于稀疏图
C、

Kruskal算法的时间复杂度是用顶点个数决定的
D、

Prim为了提高贪心选择时查找最短边的效率,首先将图中的所有边按权值排序。

正确答案: B 我的答案:B
得分: 5.0分
9

【单选题】给定一个有向连通带权图G=(V,E),n个顶点,e条边,Dijsktra算法的时间复杂度为()

A、

O(n 2)
B、

O(n 3)
C、

O(eloge)
D、

O(nlogn)

正确答案: A 我的答案:A
得分: 5.0分
10

【单选题】找零钱问题的贪心策略是()

A、

面值大的钱币优先找出
B、

面值小的钱币优先找出
C、

面值小于待找钱数且面值最大的优先找出
D、

以上都不对

正确答案: C 我的答案:C
得分: 5.0分
11

【单选题】给定一个无向连通带权图G=(V,E),n个顶点,e条边,kruskal算法的时间复杂度为()

A、
O(n 2)

B、
O(n 3)

C、
O(eloge)

D、
O(nlogn)

正确答案: C 我的答案:C得分: 5.0分
12、
【单选题】会场安排问题的最好的贪心策略是()

A、
在不冲突的情况下,开始时间早的优先安排

B、
在不冲突的情况下,使用时间短的优先安排

C、
在不冲突的情况下,使用时间长的优先安排

D、
在不冲突的情况下,结束时间早的优先安排

正确答案: D 我的答案:D
13

【单选题】
在这里插入图片描述

用Prim算法求解上图的最小生成树,初始时,集合S={a},集合V-S={b,c,d,e,f,g},第一步贪心选择的边是()。

A、
(a,b)

B、
(b,c)

C、
(c,d)

D、
(c,f)

正确答案: A 我的答案:A
14

【单选题】给定一个无向连通带权图G=(V,E),下述关于prim算法说法不正确的是( )。

A、
prim算法先选出一个顶点加入到集合S,把图的顶点分成两个集合,一个S,一个V-S

B、
prim算法总是选择连接S和V-S的边中权最小的加入到最小生成树中。

C、
prim算法停止的条件是S=V

D、
prim算法的时间复杂度O(n3),n为图的顶点个数。

正确答案: D 我的答案:D
15
【单选题】哈夫曼编码是一种最优前缀码方案,给出待编码的8个字符及出现的频率,若干步贪心选择之后,树的集合为:
在这里插入图片描述

接下来的贪心选择选出的两个树的权分别为()和(),让它们作为左右子树构造一课新树,新树的根权值是()。

A、
15、14、23

B、
15、19、14

C、
14、15、29

D、
15、19、29

正确答案: C 我的答案:C
16

【单选题】给定一个无向连通带权图G=(V,E),n个顶点,e条边,Prim算法的时间复杂度为()

A、
O(n 2)

B、
O(n 3)

C、
O(eloge)

D、
O(nlogn)

正确答案: A 我的答案:A
17
【单选题】哈夫曼编码是一种最优前缀码方案,给出待编码的8个字符及出现的频率,若干步贪心选择之后,树的集合为:
在这里插入图片描述

这是经过多少次贪心选择之后得到的结果()。

A、
1

B、
2

C、
3

D、
4

正确答案: C 我的答案:C
二.多选题
1

【多选题】给定一个无向连通带权图G=(V,E),下述关于prim算法说法正确的是( )。

A、

prim算法先选出一个顶点加入到集合S,把图的顶点分成两个集合,一个S,一个V-S
B、

prim算法总是选择连接S和V-S的边中权最小的加入到最小生成树中
C、

prim算法停止的条件是S=V
D、

prim算法的时间复杂度O(n2),n为图的顶点个数
E、

prim算法的时间复杂度和图的顶点数有关,也和图的边数也有关
F、

prim算法的时间复杂度O(n3),n为图的顶点个数

正确答案: ABCD 我的答案:ABCD
得分: 5.0分
2

【多选题】给定一个无向连通带权图G,下述有关生成树的说法正确的是()。

A、

G的生成树可能有多棵
B、

G的生成树唯一
C、

G的最小生成树耗费最小
D、

G的最小生成树唯一

正确答案: AC 我的答案:AC
得分: 5.0分
3

贪心算法的正确性证明包括证明

A、

可行性
B、

贪心选择性质
C、

最优子结构性质
D、

存在最优解
E、

可分为独立子问题

正确答案: BC 我的答案:BC
得分: 5.0分
三.判断题
1

【判断题】会场安排的最佳贪心策略一定能保证安排最多的相容会议使用同一会议室。
我的答案:√
得分: 5.0分 正确答案:√
2

贪心算法的贪心策略确定后可以更改( )
我的答案:×
得分: 5.0分 正确答案:×
3

【判断题】贪心算法在每个阶段面临选择时,都做出对眼前来讲是最有利的选择
我的答案:√
得分: 5.0分 正确答案:√
4

【判断题】堆排序、冒泡排序、快速排序都采用了贪心策略进行排序。
我的答案:×
得分: 5.0分 正确答案:×
5

一个好的贪心策略,一定能得到问题的最优解。
我的答案:×
得分: 5.0分 正确答案:×
6

针对同一个问题,贪心策略可能有多个,贪心算法的好坏取决于贪心策略的好坏。

我的答案:√
得分: 5.0分 正确答案:√
7

贪心法可以保证最终的解是最优解。
我的答案:×
得分: 5.0分 正确答案:×
8
哈夫曼编码属于可变长编码。

我的答案:√ 得分: 5.0分正确答案:√
9
采用贪心策略设计的算法,一定要对算法的正确性进行证明。
我的答案:√ 得分: 5.0分正确答案:√
10
贪心法具有高效性,它可以非常迅速地获得一个解。
我的答案:√ 得分: 5.0分正确答案:√

  • 3
    点赞
  • 5
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小毛头~

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值