算法设计与分析试题
一、概念题
1.队列 2. 完全二叉树 3.堆 4.P类问题 5.NP问题
二、程序填空题
1.宽度优先图周游算法
procedure bft(g,n)
//g的宽度优先周游//
declare visited(n)
for iß1 to n do //将所有结点标记为未访问//
⑴
repeat
for i<--1 to n do //反复调用bfs//
if visited(i)=0 then ⑵ endif
repeat
end bft
2.找一个图的所有m—着色方案
procedure mcoloring(k)
//这是图着色的一个递归回溯算法。图g用它的布尔邻接矩阵graPh(1:n,1:n)表示。它计算并打印出符合以下要求的全部解,把整数1,2,…,m分配给图中各个结点且使相邻近的结点的有不同的整数。k是下一个要着色结点的下标。//
global integer m,n,x(1:n)boolean graPh(1;n,1:n)
integer k
loop //产生对x(k)所有的合法赋值。//
call nextvalue(k)。//将一种合法的颜色分配给x(k)//
if ⑴ then exit endif //没有可用的颜色了//
if ⑵
then print(x) //至多用了m种颜色分配给n个结点//
else call mcoloring
repeat
end mcoloring
算法设计与分析作业
问答题
1.算法的重要的5个特征是什么?
2.解释贪心法的基本思想,并用贪心法解决如下背包问题。
背包问题:n=4,M=50,
(p1,p2,p3,p4)=(15,10,25,18), (w1,w2,w3,w4)=(20,15,15,20)
3. 请用Prim方法求下图所示的最小生成树。(请写出该方法的基本思想和主要中间过程)。
4.求三角形面积:给出三角形的三个边长为a,b,c,求三角形的面积。
5. 猜名次:五个学生A、B、C、D、E参加某一项比赛。甲、乙两人在猜测比赛的结果。甲猜的名次顺序为A、B、C、D、E,结果没有猜中任何一个学生的名次,也没有猜中任何一对相邻名次(所谓一对相邻名次,是指其中一对选手在名次上邻接。例如1与2,或者2与3 等)。乙猜的名次顺序为D、A、E、C、B,结果猜中了两个学生的名次,并猜对了两对学生名次是相邻的。问比赛结果如何?答案为:E、D、A、C、B。乙猜对C、B为最后两名,两对 相邻为(D、A)、(C、B))。
提示:设五名选手A、B、C、D、E的编号分别为1、2、3、4、5。用五个变量c1、c2、c3、 c4、c5标记第一名至第五名。算法仍用穷尽法。其中处理相邻问题用一个两位数表示,即DA、AE、EC、CB分别用41、15、53、32表示,并按两位数比较判断相邻问题。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !