算法设计与分析试卷
算法设计与分析考试题及答案
1.一个算法就是一个有穷规则的集合,其中之规则规定了解决某一特殊类型问题的一系列运算,此外,算法还应具有以下五个重要特性:___确定性______,____有穷性____,____可行性____,_____0个或多个输入_____,____1个或多个输出______。
2.算法的复杂性有____时间复杂性_________和_____空间复杂性
______之分,衡量一个算法好坏的标准是_________时间复杂度高低_____________。
3.某一问题可用动态规划算法求解的显著特征是____________该问
题具有最优子结构性质________________________。
4.若序列X={B,C,A,D,B,C,D},Y={A,C,B,A,B,D,C,D},请给出序列X 和Y的一个最长公共子序列_____________________________。
5.用回溯法解问题时,应明确定义问题的解空间,问题的解空间至少应包含____一个最优解_______。
6.动态规划算法的基本思想是将待求解问题分解成若干______子问题______,先求解_____子问题______,然后从这些_____子问题_______的解得到原问题的解。
7.以深度优先方式系统搜索问题解的算法称为______回溯法_______。
8.0-1背包问题的回溯算法所需的计算时间为______ o(n*2n) _______,用动态规划算法所需的计算时间为______ o(min{nc,2n})______。
算法设计与分析期末考试B卷
大学期末考试试卷B 卷(算法设计与分析)
一、选择题(30分,每题2分)
1、下面的算法段针对不同的自然数n 作不同的处理,其中函数odd (n) 当n 是奇数时返回true ,否则返回false ,
while ( n > 1) if ( odd (n) ) n = 3 * n + 1;
else n = n / 2;
请问该算法所需计算时间的下界是 。 A .Ω(2n ) B .Ω(nlog n ) C .Ω(n !) D .Ω(logn )
2、某体育馆有一羽毛球场出租,现在总共有10位客户申请租用此羽毛球场,每个客户所租用的时间单元如下
同一时刻,该羽毛球场只能租借给一位客户,请问在这10位客户里面,体育馆最多能满足 位客户的需求。 P104 A .3 B .4 C .5 D .6
3、当一个确定性算法在最坏情况下的计算复杂性与其在平均情况下的计算复杂性有较大差别时,可以使用 来消除或减少问题的好坏实例间的这种差别。 A .数值概率算法 B .舍伍德算法 C .拉斯维加斯算法 D .蒙特卡罗算法
4、将一个正整数n 表示成一系列正整数之和, n = n 1 + n 2 + … +n k (其中,n 1≥n 2≥ … ≥n k ≥1,k ≥1)
正整数n 的一个这种表示称为正整数n 的一个划分。正整数n 的不同的划分个数总和称为正整数n 的划分数,记作p (n );另外,在正整数n 的所有不同划分中,将最大加数n1不大于m 的划分个数记作q (n ,m )。则当n=10时,p (n )= 。 A .q (8,8) B .1 + q (9,9) P12 C .2 + q (10,8) D .A ,B ,C 都正确
算法设计与分析考试题及答案
一、填空题(20分)
1.一个算法就是一个有穷规则的集合,其中之规则规定了解决某一特殊类型问题的一系列运算,此外,算法还应具有以下五个重要特
性:_________,________,________,__________,__________。
2.算法的困难性有_____________和___________之分,衡量一个算法好坏的标准
是______________________。
3.某一问题可用动态规划算法求解的显著特征是
____________________________________。
4.若序列X={B,C,A,D,B,C,D},Y={A,C,B,A,B,D,C,D},请给出序列X和Y的一个最长公共子序列_____________________________。
5.用回溯法解问题时,应明确定义问题的解空间,问题的解空间至少应包含
___________。
6.动态规划算法的基本思想是将待求解问题分解成若干____________,先求解
___________,然后从这些____________的解得到原问题的解。
7.以深度优先方式系统搜寻问题解的算法称为_____________。
8.0-1背包问题的回溯算法所需的计算时间为_____________,用动态规划算法所需的计算时间为____________。
9.动态规划算法的两个基本要素是___________和___________。
10.二分搜寻算法是利用_______________实现的算法。
二、综合题(50分)
算法设计与分析a卷及答案
算法设计与分析试题A及答案
一.填空题:(每题4分,共20分)
1.算法是指(解决问题的)一种方法或一个过程,是(若干指令的)有穷序列。
2
质。
3. 贪心选择性质是指所求问题的整体最优解可以通过一系列局部最优的选择来达到。
4.递归函数的两大基本要素是_递归方程和边界条件_ .
5.在回溯法中,一个问题的解空间是指一个大的解决方案可以看作是由若干个小的决策组成。很多时候它们构成一个决策序列。解决一个问题的所有可能的决策序列构成该问题的解空间.
二.简答题:(每题5分,共20分)
1.简述分治法所能解决的问题一般应具有的特征。
1.)该问题的规模缩小到一定的程度就可以容易地解决;
2.)该问题具有最优子结构性质;
3.)利用该问题分解出的子问题的解可以合并为该问题的解;
4.)该问题所分解出的各个子问题是相互独立的。
2.设有待安排的8个活动的开始时间和结束时间如下表。请采用贪心算法给出活动安排序
解:将待安排的8个活动的开始时间和结束时间按结束时间的非减序排列如下:
用贪心算法给出活动安排序列:1,3,6,8。贪心选择的意义是使剩余的可安排时间段极大化,以便安排尽可能多的相容活动。
3.请描述分治法的具体过程。
将原问题划分成k 个子问题。对这k 个子问题分别求解。如果子问题的规模仍然不够
小,则再划分为k 个子问题,如此递归的进行下去,直到问题规模足够小,很容易求出其解为止。将求出的小规模的问题的解合并为一个更大规模的问题的解,自底向上逐步求出原来问题的解。
4. Fibonacci 数列如下定义:
10()11(1)(2)1
算法设计与分析考试题及答案
1.一个算法就是一个有穷规则的集合,其中之规则规定了解决某一特殊类型问题的一系列运算,此外,算法还应具有以下五个重要特性:_________,________,________,__________,__________。
2.算法的复杂性有_____________和___________之分,衡量一个算法
好坏的标准是______________________。
3.某一问题可用动态规划算法求解的显著特征是
____________________________________。
4.若序列X={B,C,A,D,B,C,D},Y={A,C,B,A,B,D,C,D},请给出序列X 和Y的一个最长公共子序列_____________________________。
5.用回溯法解问题时,应明确定义问题的解空间,问题的解空间至少应包含___________。
6.动态规划算法的基本思想是将待求解问题分解成若干____________,先求解___________,然后从这些____________的解得到原问题的解。
7.以深度优先方式系统搜索问题解的算法称为_____________。
8.0-1背包问题的回溯算法所需的计算时间为_____________,用动态规划算法所需的计算时间为____________。
9.动态规划算法的两个基本要素是___________和___________。
10.二分搜索算法是利用_______________实现的算法。
二、综合题(50分)
1.写出设计动态规划算法的主要步骤。
算法设计与分析参考试卷
算法设计与分析参考试卷
此处不能书写此处不能书写此处不能书…写………此处不能书写……………………………………………装……
算法设计与分析参考试卷
一、单项选择题
1. 当输入规模为n时,下列算法渐进复杂性中最低的是(A )。.
A. 5n
B. n2
C. 2n2
D. n! 2.二分搜索算法是利用(A )实现的算法。
A、分治策略
B、动态规划法
C、贪心法
D、回溯法 3.最大效益优先是( A )的一种搜索方式。
A.分支界限法 B.动态规划法 C.贪心法 D.回溯法
4. 回溯法搜索状态空间树是按照( C )的顺序。
A.中序遍历 B.广度优先遍历 C.深度优先遍历 D.层次优先遍历……此…处…不能…书…写…线…………………………………订……5. 回溯法解旅行售货员问题时的解空间树是( B )。 A、子集树树
6.下列算法中通常以自底向上的方式求解最优解的是( B )。 A、备忘录法法
7.下列算法中通常以深度优先方式系统搜索问题解的是( D )。 A、备忘录法
B、动态规划法
C、贪心法
D、回溯法
B、动态规划法
C、贪心法
D、回溯
B、排列树
C、深度优先生成树
D、广度优先生成
…8.快速排序算法是利用( A )实现的算法。
A.分治策略 B.动态规划法 C.贪心法 D.回溯法
此处不能书写…
二、填空题
1. 通俗地讲,算法是指解决问题的一种方法或一个过程。 2.出于“平衡子问题”的思想,通常分治法在分解原问题时,形成若干子问题,这些子问题的规模都大致相同。
三、简答题
1.简述单源最短路径问题,该问题适合采用什么方法求解。
第 1 页共 9 页
算法分析与设计试题及答案
算法分析与设计试题及答案
一、选择题
1. 下列哪个是属于分治算法的例子?
A. 冒泡排序
B. 归并排序
C. 顺序查找
D. 选择排序
答案:B
2. 在排序算法中,时间复杂度最优的是:
A. 冒泡排序
B. 插入排序
C. 归并排序
D. 快速排序
答案:C
3. 哪个不是动态规划的特点?
A. 具有重叠子问题
B. 通过递归求解
C. 需要保存子问题的解
D. 具有最优子结构
答案:B
4. 在图的广度优先搜索算法中,使用的数据结构是:
A. 栈
B. 队列
C. 数组
D. 堆栈
答案:B
5. 在最小生成树算法中,下列哪个不属于贪心策略?
A. Kruskal算法
B. Prim算法
C. Dijkstra算法
D. Prim-Kruskal混合算法
答案:C
二、简答题
1. 请简述分治算法的思想和应用场景。
答案:分治算法的思想是将原问题分解成若干个规模较小且类似的
子问题,然后解决子问题,最后将子问题的解合并得到原问题的解。
其应用场景包括排序算法(如归并排序、快速排序)、搜索算法(如
二分查找)等。
2. 什么是动态规划算法?请给出一个动态规划算法的示例。
答案:动态规划算法是一种通过将问题分解成子问题并解决子问题
来解决复杂问题的方法。它的特点是具有重叠子问题和最优子结构性质。以斐波那契数列为例,可以使用动态规划算法求解每一项的值,
而不需要重复计算。
3. 图的深度优先搜索和广度优先搜索有什么区别?
答案:图的深度优先搜索(Depth First Search,DFS)是一种先访问子节点再访问兄弟节点的遍历算法,通常使用递归或者栈实现。而广
度优先搜索(Breadth First Search,BFS)则是以层次遍历的方式展开
算法设计与分析试卷及答案
湖南科技学院二○年学期期末考试
信息与计算科学专业年级《算法设计与分析》试题
考试类型:开卷试卷类型:C 卷考试时量:120分钟
性的阶为
结点的是 指1.试述回溯法的基本思想及用回溯法解题的步骤。
2.有8个作业{1,2,…,8}要在由2台机器M1和M2组成的流水线上完成加工。每个作业加工的顺序都是先在M1给出一个最优调度方案,使得从第一个作业在机器M1上开始加工,到最后一个作业在机器M2上加工完成所需的时间最少,并计算所需的最少时间。 答:
最优调度方案为
所需的最少时间为:_______________________
3.根据优先队列式分支限界法,求下图中从v1点到v9点的单源最短路径,请画出求得最优解的解空间树。要求中间被舍弃的结点用×标记,获得中间解的结点用单圆圈○框起(如),最优解用双圆圈◎框起。
三、算法填空(每空2分,共计10分)
设R={r1,r2,...,r n}是要进行排列的n个元素,其中元素r1,r2,...,r n可能相同,试设计一个算法,列出R的所有不同排列,并给出不同排列的总数。算法如下,填写缺失的语句。
template
Swap(R[k],R[i]);
}
}
}
四、算法设计(共计15分)
设有n个程序{1,2,3...,n}要存放在长度为L的磁带上。程序i存放在磁带上的长度是Li,1≤i≤n。程序存储问题要求确定这n个程序在磁带上的一个存储方案,使得能够在磁带上存储尽可能多的程序,在保证存储最多程序的前提下还要求磁带的利用率达到最大。
(1)给出求解存储最多程序的算法,并证明算法的正确性;
算法设计和分析试题(卷)与答案解析
湖南科技学院二○ 年 学期期末考试
信息与计算科学专业 年级《算法设计与分析》 试题
考试类型:开卷 试卷类型:C 卷 考试时量:120 分钟 一、填空题(每小题3 分,共计30 分)
1. 用O 、Ω和θ表示函数f 与g 之间的关系______________________________。
()()log log f n n n g n n ==
2. 算法的时间复杂性为1,
1()8(3/7),
2
n f n f n n n =⎧=⎨
+≥⎩,则算法的时间复杂性的阶
为__________________________。
3. 快速排序算法的性能取决于______________________________。
4. 算法是_______________________________________________________。
5. 在对问题的解空间树进行搜索的方法中,一个活结点最多有一次机会成为活结点的
是_________________________。
6. 在算法的三种情况下的复杂性中,可操作性最好且最有实际价值的是_____情况下的时间复杂性。
7. 大Ω符号用来描述增长率的下限,这个下限的阶越___________,结果就越有价值。。 8. ____________________________是问题能用动态规划算法求解的前提。
9. 贪心选择性质是指________________________________________________________ ____________________________________________________________。
算法设计与分析考试题目及答案
算法设计与分析考试题目及答案
Revised at 16:25 am on June 10, 2021
I hope tomorrow will definitely be better
算法分析与设计期末复习题
一、 选择题
1.应用Johnson 法则的流水作业调度采用的算法是D
A. 贪心算法
B. 分支限界法
C.分治法
D. 动态规划算法
塔问题如下图所示;现要求将塔座A 上的的所有圆盘移到塔座B 上,并仍按同样顺序叠置;移动圆盘时遵守Hanoi 塔问题的移动规则;由此设计出解Hanoi 塔问题的递归算法正确的为:B
3. 动态规划算法的基本要素为C A. 最优子结构性质与贪心选择性质 B .重叠子问题性质与贪心选择性质 C .最优子结构性质与重叠子问题性质 D. 预排序与递归调用
4. 算法分析中,记号O 表示B , 记号Ω表示A , 记号Θ表示D ; A.渐进下界 B.渐进上界 C.非紧上界 D.紧渐进界 E.非紧下界
5. 以下关于渐进记号的性质是正确的有:A A.f (n)(g(n)),g(n)(h(n))f (n)(h(n))=Θ=Θ⇒=Θ B. f (n)O(g(n)),g(n)O(h(n))h(n)O(f (n))==⇒= C. Ofn+Ogn = Omin{fn,gn} D. f (n)O(g(n))g(n)O(f (n))=⇔=
Hanoi 塔
A. void hanoiint n, int A, int C, int B { if n > 0 {
hanoin-1,A,C, B; moven,a,b;
《算法设计与分析》试卷及答案
《算法设计与分析》试卷及答案
算法设计与分析考试复习试卷
《算法设计与分析》试卷1
一、多项选择题(每空2分,共20分):
1、以下关于算法设计问题的叙述中正确的是__________。
A、计算机与数值问题的求解——方程式求根、插值问题、数值积分、函数逼近等有关
B、利用计算机无法解决非数值问题
C、计算机在解决分类、语言翻译、图形识别、解决高等代数和组合分析等方面的数学问题、定理证明、公式推导乃至日常生活中各种过程的模拟等问题中,主要进行的是判断、比较,而不是算术运算
D、算法设计与分析主要研究对象是非数值问题,当然也包含某些数值问题
2、算法的特征包括_________。
A、有穷性
B、确定性
C、输入和输出
D、能行性或可行性
3、以下描述是有关算法设计的基本步骤:
①问题的陈述②算法分析③模型的拟制④算法的实现
⑤算法的详细设计⑥文档的编制,应与其它环节交织在一起
其中正确的顺序是__________。
A、①②③④⑤⑥
B、①③⑤②④⑥
C、②④①③⑤⑥
D、⑥①③⑤②④
4、以下说法正确的是__________。
A、数学归纳法可以证明算法终止性
B、良序原则是证明算法的正确性的有力工具
C、x = 小于或等于x的最大整数(x的低限)
D、x = 小于或等于x的最大整数(x的高限)
5、汉诺塔(Hanoi)问题中令h(n)为从A移动n个金片到C 上所用的次数,则递归方程
为__________,其初始条件为__________,将n个金片从A柱移到C柱上的移动次数是__________;设菲波那契(Fibonacci)数列中Fn为第n个月时兔子的对数,则有递归方程为__________,其中F1=F2=__________。
计算机算法设计与分析期末试题4套(含答案)
(1)用计算机求解问题的步骤:
1、问题分析
2、数学模型建立
3、算法设计与选择
4、算法指标
5、算法分析
6、算法实现
7、程序调试
8、结果整理文档编制
(2)算法定义:
算法是指在解决问题时,按照某种机械步骤一定可以得到问题结果的处理过程
(3)算法的三要素
1、操作
2、控制结构
3、数据结构
算法具有以下5个属性:
有穷性:一个算法必须总是在执行有穷步之后结束,且每一步都在有穷时间内完成。
确定性:算法中每一条指令必须有确切的含义。不存在二义性。只有一个入口和一个出口
可行性:一个算法是可行的就是算法描述的操作是可以通过已经实现的基本运算执行有限次来实现的。
输入:一个算法有零个或多个输入,这些输入取自于某个特定对象的集合。
输出:一个算法有一个或多个输出,这些输出同输入有着某些特定关系的量。
算法设计的质量指标:
正确性:算法应满足具体问题的需求;
可读性:算法应该好读,以有利于读者对程序的理解;
健壮性:算法应具有容错处理,当输入为非法数据时,算法应对其作出反应,而不是产生莫名其妙的输出结果。
效率与存储量需求:效率指的是算法执行的时间;存储量需求指算法执行过程中所需要的最大存储空间。一般这两者与问题的规模有关。
经常采用的算法主要有迭代法、分而治之法、贪婪法、动态规划法、回溯法、分支限界法
迭代法也称“辗转法”,是一种不断用变量的旧值递推出新值的解决问题的方法。
利用迭代算法解决问题,需要做好以下三个方面的工作:
一、确定迭代模型。在可以用迭代算法解决的问题中,至少存在一个直接或间接地不断由旧值递推出新值的变量,这个变量就是迭代变量。
计算机算法设计分析试题及答案
算法设计与分析试卷
一、填空题(20分,每空2分)
1、算法的性质包括输入、输出、___、有限性。
2、动态规划算法的基本思想就将待求问题_____、先求解子问题,然后从这些子
问题的解得到原问题的解。
3、设计动态规划算法的4个步骤:
(1)找出____,并刻画其结构特征。
(2)_______。
(3)_______。
(4)根据计算最优值得到的信息,_______。
4、流水作业调度问题的johnson算法:
(1)令N1=___,N2={i|ai>=bj};
(2)将N1中作业依ai的___。
5、对于流水作业高度问题,必存在一个最优调度π,使得作业π(i)和π(i+1)满足Johnson 不等式_____。
6、最优二叉搜索树即是___的二叉搜索树。
二、综合题(50分)
1、当(a1,a2,a3,a4,a5,a6)=(-2,11,-4,13,-5,-2)时,最大子段和为∑ak(2<=k<=4)____(5分)
2、由流水作业调度问题的最优子结构性质可知,T(N,0)=______(5分)
3、最大子段和问题的简单算法(10分)
int maxsum(int n,int *a,int & bestj)
{
intsum=0;
for (int i=1;i<=n;i++)
for (int j=i;j<=n;j++)
int thissum=0;
for(int k=i;k<=j;k++)_____;
if(thissum>sum){
sum=thissum;
______;
bestj=j;}
算法试卷
算法设计与分析课程试题一
一、选择题
1.选出不是算法所必须具备的特征()。
A有穷性B确切性C高效性D可行性
2.下列()不是衡量算法的标准。
A 时间效率
B 空间效率
C 问题的难度
D 适应能力
3.与递推关系x(n)=2x(n-1)+1,x(1)=1等价的通项公式为()。
A x(n)=2n
B x(n)=2n-1
C x(n)=2n+1
D x(n)=n!
4.二维最近邻点问题,如果使用分治法,对于一个子集上的某一点,另一个子集上需要检查的点的个数是()。
A 1个
B 2个
C 6个
D 8个
5.下列是动态规划算法基本要素的是()。
A 最优子结构B构造最优解 C 贪心选择因子D界限函数
6.()算法应用到广度优先遍历策略。
A 分支界限法
B 动态规划法C分治法D回溯法
7.Prim算法求最小生成树采用的是()算法思想。
A 贪心算法
B 动态规划法
C 回溯法
D 蛮力法11.三个盘子的汉诺塔,至8.对于凸集下列说法正确的是()。
A 凸集中的所有点都属于凸包;
B 凸集中任意两点的连线都在凸中;
C 凸集中任意两点的连线都不在凸集中;D一个点集如果不是凸集,则点集中任意两点的连线都不在凸集中少9.对多段图问题描述不正确的是:;
A、多段图是一个无向图B、可用向前处理法;
C、可用向后处理法;D、可用分治法解决。
10.以下对回溯法描述正确的是:;
A、解必须表示成一个2n-元组(x1,x1,x2,x2,﹒﹒﹒,x n,x n);
B、回溯法的解必须满足一组综合的约束条件,称为解函数;
C、满足显示约束的所有元组不能确定一个可能的解空间,
算法设计与分析试题及答案
1. 按分治策略求解棋盘覆盖问题时,对于如图所示的24×24的特殊棋盘,共需要多少个L 型骨
牌;并在棋盘上填写L 型骨牌的覆盖情况。
2. 假设有7个物品,给出重量和价值。若这些物品均不能被分割,且背包容量M =140,使用回
溯方法求解此0-1背包问题。请画出状态空间搜索树。
3. 假设有7个物品,它们的重量和价值如下表所示。若这些物品均可以被分割,且背包容量M
=140,使用贪心算法求解此背包问题。请写出求解策略和求解过程。 W (35,30,50,60,40,10,25)p (10,40,30,50,35,40,30)
4. 在给出的电路板中,阴影部分是已作了封锁标记的方格,请按照队列式分支限界法在图中确定
a 到
b 的最短布线方案,要求布线时只能沿直线或直角进行,在图中标出求得最优解时各方格情况。
5. 画出字符表的哈夫曼编码对应的二叉树。
6. 已知1()*()i i k k ij r r A a +=,k =1,2,3,4,5,6,r 1=5,r 2=10,r 3=3,r 4=8,r 5=5,r 6=20,r 7=6,求
矩阵链积A 1×A 2×A 3×A 4×A 5×A 6的最佳求积顺序。
7. 给出城市网络图,售货员要从城市1出发,经过所有城市回到城市1,画出该问题的解空间树,
描述出用优先队列式分支限界法求解时的搜索情况。表示出优先队列、当前扩展结点等的变化情况。
8. 依据优先队列式分支限界法,求从s 点到t 点的单源最短路径,画出求得最优解的解空间树。
一、假设有7个物品,它们的重量和价值如下表所示。若这些物品均不能被分割,且背包容量M
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
算法设计与分析试卷(A 卷)
一、 选择题 ( 选择1-4个正确的答案,每题2分,共20分)
(1)计算机算法的正确描述是:
A .一个算法是求特定问题的运算序列.
B .算法是一个有穷规则的集合,其中之规则规定了一个解决某一特定类型的问题的运算序列.
C .算法是一个对任一有效输入能够停机的图灵机.
D .一个算法,它是满足5 个特性的程序,这5个特性是:有限性、确定性、能 行性、有0个或多个输入且有1个或多个输出.
(2)影响程序执行时间的因素有哪些?
A .算法设计的策略
B .问题的规模
C .编译程序产生的机器代码质量
D .计算机执行指令的速度
(3)用数量级形式表示的算法执行时间称为算法的
A .时间复杂度
B .空间复杂度
C .处理器复杂度
D .通信复杂度
(4)时间复杂性为多项式界的算法有:
A .快速排序算法
B .n-后问题
C .计算π值
D .prim 算法
(5)对于并行算法与串行算法的关系,正确的理解是:
A .高效的串行算法不一定是能导出高效的并行算法
B .高效的串行算法不一定隐含并行性
C .串行算法经适当的改造有些可以变化成并行算法
D. 用串行方法设计和实现的并行算法未必有效
(6)衡量近似算法性能的重要标准有:
A .算法复杂度
B .问题复杂度
C .解的最优近似度
D .算法的策略
(7)分治法的适用条件是,所解决的问题一般具有这些特征:
A .该问题的规模缩小到一定的程度就可以容易地解决;
B .该问题可以分解为若干个规模较小的相同问题;
C .利用该问题分解出的子问题的解可以合并为该问题的解
D .该问题所分解出的各个子问题是相互独立的.
(8)具有最优子结构的算法有:
A .概率算法
B .回溯法
C .分支限界法
D .动态规划法
(9)下列哪些问题是典型的NP 完全问题:
A .排序问题
B .n-后问题
C .m-着色问题
D .旅行商问题
(10)适于递归实现的算法有:
A .并行算法
B .近似算法
C .分治法
D .回溯法
二、算法分析题(每小题5分,共10分)
(11)用展开法求解递推关系:
(12)分析当输入数据已经有序时快速排序算法的不足,提出算法的改进方案.
⎩⎨⎧>+-==1
1)1(211)(n n T n n T
三、简答题(每小题5分,共10分)
(13)算法的复杂度分析涉及哪些方面?
(14)动态规划法的指导思想是什么?
四、计算题(每小题8分,共24分)
(15)用动态规划法求A10*30B30*20C20*10D10*200运算量最小的乘积顺序.要求写出求解过程,并将结果填入数组m[4][4]中.
(16) 用贪心法求下图的最小生成树
16
(17)马步问题:在n*n的方棋盘中,马只能走“日”字.马从初始位置(x0,y0)出发,把棋盘的每一格都走一次,且只走一次(遍历).求出n=5时马的行走路线.
五、分析设计题(每小题8分,共16分)
(18)有16个选手参加循环赛,循环赛一共进行15天,每个选手必须与其他的15个选手各赛一场,每个选手一天只比赛一次;设计一个满足上述要求的比赛日程表. (19)某市场营销人员从他所在城市(顶点1)出发,到其他5个城市去做市场调查,如下图19所示.请设计行走路线.
19
六、算法设计题(每小题10分,共20分)
(20)将一组无序数据重新排列成有序序列,写一算法实现;并分析你所写算法的时
间复杂性,简要说明该算法适用于什么情形?不适用于什么情形?
(21)写一贪心算法,求解0-1背包问题.
0-1背包问题描述:
给定n种物品和一个背包.物品i的重量是Wi,其价值为Vi,背包的容量为C.问如何选择装入背包的物品,使得装入背包中物品的总价值最大?
若进一步讨论:就0-1背包问题的应用作简单的描述.