(陈慧南 第3版)算法设计与分析——第6章课后习题答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
合并树。
解析: n 11, k 3。n 1 %k 1 10%2 0 ,因此不用补充虚结点(可
参考 P105);
上述准则为:若 n 是非负整数,且满足 n mod k 1 1,则使用构造二路
合并最佳模式树的最优解亮度标准(带权外路径长度最小),将对所有
4
W w0, w1,, wn1 生成一棵最优 k 路合并树。
磁带编号
程序 ID
T0 9 5 T1 8 12 T3 1 14
2
03
11 6
10 7
此时 D 值达到最小,对应程序长度在磁带上的存储情况为:
磁带编号
程序长度 ai
T0 3 5 8
12
32
T1 4 6 10
18
T3 5 7 11
26
5
解析:已知 Prim 算法时间复杂度为 O n2 ,受顶点 n 影响;
Kruskal 算法时间复杂度为 O m logm ,受边数 m 影响;
因为 m O n1.99 ,说明 G 的边数较顶点数更多,因此选用 Prim 算法更为合适。
6-12 设 有 13 个 程 序 需 存 放 在 3 条 磁 带 T0 、 T1 和 T3 上 , 程 序 长 度 分 别 为
按照上述准则,构造出的一棵 3 路合并树如下图所示:
172
56
40
76
18
18
20
9
15
16
23
25
28
3
7
8
6-9 图 G V , E 是一个无向连通图, n V , m E 。且 m O n1.99 。试问选
择何种算法求图的最小代价生成树,是 Prim 算法还是 Kruskal 算法?
⑥ 选择作业 1,则 X 6, 2,3,5,1 。将其按照期限 di 非减次序排列可
得:
ID
di
5
1
6
2
3
3
1
3
2
4
作业5
作业3 作业2
-1
0
1
2
3
4
作业6 作业1(冲突)
该集合无可行排序,因此 X 6, 2,3,5,1 不可行, X 6, 2,3,5 ;
3
⑦ 选择作业 0,则 X 6, 2,3,5, 0 。将其按照期限 di 非减次序排列
ID
di
6
2
3
3
2
4
2
作业3 作业2
-1
0
1
2
3
4
作业6
该作业序列是一个可行排序,因此作业集合 X 6, 2,3 可行;
⑤ 选择作业 5,则 X 6, 2,3,5 。将其按照期限 di 非减次序排列可
得:
ID
di
5
1
6
2
3
3
2
4
作业5
作业3 作业2
-1
0
1
2
3
4
Байду номын сангаас
作业6
该作业序列是一个可行排序,因此作业集合 X 6, 2,3,5 可行;
收益。 解析: Step1. 首先计算所有物品单位重量的收益,并按照非递增次序排列,得:
ID
pi
wi
pi wi
4
6
1
6
0
10
2
5
5
18
4
4.5
2
15
5
3
6
3
1
3
1
5
3
1.67
3
7
7
1
Step2. 下面按照 pi / wi 非增次序依次尝试将物品装入背包:
① w4 1 15 ,物品 4 可全选,此时剩余载重为 15 1 14 ; ② w0 2 14 ,物品 0 可全选,此时剩余载重为 14 2 12 ; ③ w5 4 12 ,物品 5 可全选,此时剩余载重为 12 4 8 ; ④ w2 5 8 ,物品 2 可全选,此时剩余载重为 8 5 3 ; ⑤ w6 1 3 ,物品 6 可全选,此时剩余载重为 3 1 2 ; ⑥ w1 3 2 ,物品 1 可选 2 3 ,此时剩余载重为 0,选择结束。
12,5,8,32, 7,5,18, 26, 4,3,11,10, 6 。请给出最优存储方案。
解析:首先将这 13 个程序按照程序长度非降序排列,得:
程序 ID
9 8 1 5 12 4 2 11 10 0 6 7 3
程序长度 ai 3 4 5 5 6 7 8 10 11 12 18 26 32
根据定理可知,按照程序编号存放方案如下:
① 初始化作业集合为 X ;
② 选择作业 6, X 6一定是一个可行解;
③ 选择作业 2,则 X 6, 2 。将其按照期限 di 非减次序排列可得:
ID
di
6
2
2
4
作业2
-1
0
1
2
3
4
作业6
该作业序列是一个可行排序,因此作业集合 X 6, 2 可行;
④ 选择作业 3,则 X 6, 2,3 。将其按照期限 di 非减次序排列可得:
2
4
2
3
3
2
4
该集合无可行排序,因此 X 6, 2,3,5, 4 不可行,X 6, 2,3,5 ;
综 上 所 述 , 作 业 集 合 X 2,3, 6,5 为 最 优 解 。 且 此 时 收 益 为
30 20 18 6 74 。
6-8 设W 3, 7,8,9,15,16,18, 20, 23, 25, 28 ,请按照上述准则,构造一课最优 3 路
可得:
ID
di
5
1
0
1
6
2
3
3
2
4
作业5
作业3 作业2
-1
0
1
2
3
4
作业0(冲突)作业6
该集合无可行排序,因此 X 6, 2,3,5, 0 不可行,X 6, 2,3,5 ;
⑧ 选择作业 4,则 X 6, 2,3,5, 4 。将其按照期限 di 非减次序排列
可得:
ID
di
5
1
6
第六章课后习题
姓名:赵文浩 学号:16111204082 班级:2016 级计算机科学与技术
6-1 设有背包问题实例,n 7 ,M 15,w0, w1, , w6 2,3,5, 7,1, 4,1 ,物品装 入背包的收益为 p0, p1, , p6 10,5,15, 7, 6,18,3 。求这一实例的最优解和最大
综上所述 ,最优 解为 x0, x1,, x6 1, 2 3,1, 0,1,1,1 。此时 的最大 收益为 10 5 2 3 15 6 18 3 55.33。
6-3 设 有 带 时 限 作 业 排 序 实 例 , n 7 , p0, p1,, p6 3,5, 20,18,1, 6,30 ,
1
d0, d1,, d6 1,3, 4,3, 2,1, 2 。给出此实例为输入,执行函数 JS 得到的最优解和
最大收益。 解析:
Step1. 将所有作业按照收益的非增次序排列可得:
ID
pi
di
6
30
2
2
20
4
3
18
3
5
6
1
1
5
3
0
3
1
4
1
2
Step2. 依次将作业添加到作业集合 X 中
相关文档
最新文档