算法设计与分析试卷

合集下载

算法设计分析期中试题

算法设计分析期中试题

《算法设计与分析》期中试卷一、叙述分治算法的基本思想及一般算法设计模式;二、叙述动态规划算法的基本步骤及动态规划算法的基本要素;三、改进课本P74的Lcs算法,使改进算法不用数组b亦可在O(m+n)的时间内构造最长公共序列;四、求下列函数的渐近表达式(1). 3n2+10n(2).n2/10+2n(3)21+1/n(4)logn3(5)10log3n五、对于下列各组函数发f(n)和g(n),确定f(n)=O((g(n)))或者f(n)= ((g(n)))或者f(n)=θ((g(n))),并简述理由(1). f(n)=logn2 , g(n)=logn+5;(2). f(n)=logn2 , g(n)= √n;(3), f(n)=n, g(n)= logn2;(4). f(n)=nlogn+n,g(n)=logn;(5). f(n)=10.g(n)=log10;(6). f(n)=log2n g(n)=logn(7). f(n)=2n g(n)= 3n;(8). f(n)=2n g(n)= 100n2;六、设a[0:n-1]是已排好序的数组,请改写二分搜索算法,使得当搜索元素x不再数组中时,返回小于x的最大元素位置i和大于x 的最小元素位置j。

当搜索元素在数组中时,i和j相同,均为x 在数组中的位置七、设a[0:n-1]是有n个元素的数组,k(0<=k<=n-1)是非负整数。

试设计一个算法将子数组a[0:k]与a[k+1:n-1]换位。

要求算法在最坏的情况下耗时O(n),且只用到O(1)的辅助空间。

八、在一个由元素组成的表中出现次数最多的元素称为众数。

试写一个寻找众数的算法,并分析其计算复杂性。

九、设计一个O(n2)时间的算法,找出由n个数组成的序列的最长单调递增子序列。

十、给定n中物品和一背包,物品i的重量是ω,体积是b i,其价值为v i ,背包的容量为C,容积为D。

问:应该如何选择装入背包中的物品,使得装入背包中的物品的总价值最大?在选择装入背包的物品时,对每种物品i只有两种选择,即装入背包或不装入背包,不能将物品i装入背包多次,也不能只装入部分的物品i。

算法设计与分析试卷及答案

算法设计与分析试卷及答案

算法设计与分析1、(1) 证明:O(f)+O(g)=O(f+g)(7分)(2) 求下列函数的渐近表达式:(6分)① 3n 2+10n;② 21+1/n;2、对于下列各组函数f(n)和g(n),确定f(n)=O(g(n))或f(n)=Ω(g(n))或f(n)=θ(g(n)),并简述理由。

(15分)(1);5log )(;log )(2+==n n g n n f (2);)(;log )(2n n g n n f == (3);log )(;)(2n n g n n f == 3、试用分治法对数组A[n]实现快速排序。

(13分)4、试用动态规划算法实现最长公共子序列问题。

(15分)5、试用贪心算法求解汽车加油问题:已知一辆汽车加满油后可行驶n 公里,而旅途中有若干个加油站。

试设计一个有效算法,指出应在哪些加油站停靠加油,使加油次数最少。

(12分)6、试用动态规划算法实现下列问题:设A 和B 是两个字符串。

我们要用最少的字符操作,将字符串A 转换为字符串B ,这里所说的字符操作包括:(1)删除一个字符。

(2)插入一个字符。

(3)将一个字符改为另一个字符。

将字符串A 变换为字符串B 所用的最少字符操作数称为字符串A 到B 的编辑距离,记为d(A,B)。

试设计一个有效算法,对任给的两个字符串A 和B ,计算出它们的编辑距离d(A,B)。

(16分)⎣⎦2/)(;3)(i i g i i f ==。

对于给定的两个整数n 和m ,要求用最少的变换f 和g 变换次数将n 变为m 。

(16分)1、⑴证明:令F(n)=O(f),则存在自然数n 1、c 1,使得对任意的自然数n ≥n 1,有:F(n)≤c 1f(n)……………………………..(2分)同理可令G(n)=O(g),则存在自然数n 2、c 2,使得对任意的自然数n ≥n 2,有:G(n)≤c 2g(n)……………………………..(3分)令c 3=max{c 1,c 2},n 3=max{n 1,n 2},则对所有的n ≥n 3,有: F(n)≤c 1f(n)≤c 3f(n)G(n)≤c 2g(n)≤c 3g(n)……………………………..(5分) 故有:O(f)+O(g)=F(n)+G(n)≤c 3f(n)+c 3g(n)=c 3(f(n)+g(n)) 因此有:O(f)+O(g)=O(f+g)……………………………..(7分) ⑵ 解:① 因为;01033)103(lim 222=+-+∞→n n n n n n 由渐近表达式的定义易知: 3n 2是3n 2+10n 的渐近表达式。

算法设计与分析 期末试卷 A卷 完整含答案

算法设计与分析 期末试卷 A卷 完整含答案

装订线华南农业大学期末考试试卷(A卷) 2012学年第1学期 考试科目:算法设计与分析考试类型:(闭卷)考试 考试时间:120 分钟学号姓名年级专业题号一(20) 二(25) 三(16) 四(24) 五(15) 总分得分评阅人说明:(1)请勿漏填学号姓名等信息。

本试卷仅一份,请将答案直接填于试卷上,莫将试卷当草稿,想好了再写,若空白的位置不够,标注清楚后可以写反面;(2)答题时,对算法的描述可以采用文字、公式、图、伪代码、实例说明等混合形式。

请注意表达应条理清晰,思想简洁,勿长篇累述不得要领。

得分一、填空题(1~3题每空1分,第4题每空2分,共20分,结果直接填于划线处)1、化简下面f(n)函数的渐进上界表达式。

(5分)nnnf32/)(21,则____)(_________))((1OnfO322)(nnf,则____)(_________))((2OnfO33log)(nnf ,则____)(_________))((3OnfO2log42)(nnf ,则____)(_________))((4OnfOnnf3log)(5,则____)(_________))((5OnfO参考解答:)3())((1nOnfO ;)2())((2nOnfO ;)(log))((3nOnfO ;)())((24nOnfO ;)())((5nOnfO 。

2、用大O符号和关于n的渐进函数来表征如下算法Loop1至Loop3的运行时间。

(3分)算法1:O( );算法2:O( );12算法3:O( )参考解答:算法1:)(2n O ;算法2:)(3n O ;算法3:)(4n O 。

3、假设算法A 的计算时间为n n T 2)( ,现在一慢一快的两台计算机上测试算法A ,为解决规模n 的问题慢机运行算法A 花费t 秒,而另一台快机速度是慢机的256倍,则在快机上算法A 同样运行t 秒能解决n1规模,则n1和n 的关系为:n1= ;若算法B 的计算时间为2)(n n T ,其余条件不变,则n1= 。

算法设计与分析期末考试B卷

算法设计与分析期末考试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 .63、当一个确定性算法在最坏情况下的计算复杂性与其在平均情况下的计算复杂性有较大差别时,可以使用 来消除或减少问题的好坏实例间的这种差别。

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 都正确5、对于含有n 个元素的子集树问题,最坏情况下其解空间的叶结点数目为 。

A .n!B .2nC .2n+1-1D .∑=ni i n 1!/! P1406、在棋盘覆盖问题中,对于2k ×2k 的特殊棋盘(有一个特殊方块),所需的L 型骨牌的个数是 A 。

计算机算法设计与分析 试题

计算机算法设计与分析 试题

计算机算法设计与分析期末试题一。

选择题1、二分搜索算法是利用( A )实现的算法。

A、分治策略B、动态规划法C、贪心法D、回溯法2、下列不是动态规划算法基本步骤的是( A )。

A、找出最优解的性质B、构造最优解C、算出最优解D、定义最优解3、最大效益优先是( A )的一搜索方式。

A、分支界限法B、动态规划法C、贪心法D、回溯法4、在下列算法中有时找不到问题解的是( B )。

A、蒙特卡罗算法B、拉斯维加斯算法C、舍伍德算法D、数值概率算法5. 回溯法解旅行售货员问题时的解空间树是( A )。

A、子集树B、排列树C、深度优先生成树D、广度优先生成树6.下列算法中通常以自底向上的方式求解最优解的是( B )。

A、备忘录法B、动态规划法C、贪心法D、回溯法7、衡量一个算法好坏的标准是(C )。

A 运行速度快B 占用空间少C 时间复杂度低D 代码短8、以下不可以使用分治法求解的是(D )。

A 棋盘覆盖问题B 选择问题C 归并排序D 0/1背包问题9. 实现循环赛日程表利用的算法是( A )。

A、分治策略B、动态规划法C、贪心法D、回溯法10、下列随机算法中运行时有时候成功有时候失败的是(C )A 数值概率算法B 舍伍德算法C 拉斯维加斯算法D 蒙特卡罗算法11.下面不是分支界限法搜索方式的是( D )。

A、广度优先B、最小耗费优先C、最大效益优先D、深度优先12.下列算法中通常以深度优先方式系统搜索问题解的是( D )。

A、备忘录法B、动态规划法C、贪心法D、回溯法13.备忘录方法是那种算法的变形。

( B )A、分治法B、动态规划法C、贪心法D、回溯法14.哈弗曼编码的贪心算法所需的计算时间为( B )。

A、O(n2n)B、O(nlogn)C、O(2n)D、O(n)15.分支限界法解最大团问题时,活结点表的组织形式是( B )。

A、最小堆B、最大堆C、栈D、数组16.最长公共子序列算法利用的算法是( B )。

29.1算法设计与分析课程期末试卷-a卷(自测 ) (2)(1)

29.1算法设计与分析课程期末试卷-a卷(自测 ) (2)(1)

华南农业大学期末考试试卷(A卷)2008学年第一学期考试科目:算法分析与设计考试类型:(闭卷)考试时间:120 分钟学号姓名年级专业一、选择题(20分,每题2分)1.下述表达不正确的是。

A.n2/2 + 2n的渐进表达式上界函数是O(2n)B.n2/2 + 2n的渐进表达式下界函数是Ω(2n)C.logn3的渐进表达式上界函数是O(logn)D.logn3的渐进表达式下界函数是Ω(n3)2.当输入规模为n时,算法增长率最大的是。

A.5n B.20log2n C.2n2 D.3nlog3n3.T(n)表示当输入规模为n时的算法效率,以下算法效率最优的是。

A.T(n)= T(n – 1)+1,T(1)=1 B.T(n)= 2n2C.T(n)= T(n/2)+1,T(1)=1 D.T(n)= 3nlog2n4.在棋盘覆盖问题中,对于2k×2k的特殊棋盘(有一个特殊方块),所需的L型骨牌的个数是。

A.(4k– 1)/3 B.2k /3 C.4k D.2k5.在寻找n个元素中第k小元素问题中,若使用快速排序算法思想,运用分治算法对n个元素进行划分,应如何选择划分基准?下面答案解释最合理。

A.随机选择一个元素作为划分基准B.取子序列的第一个元素作为划分基准C.用中位数的中位数方法寻找划分基准D.以上皆可行。

但不同方法,算法复杂度上界可能不同6.有9个村庄,其坐标位置如下表所示:现在要盖一所邮局为这9个村庄服务,请问邮局应该盖在才能使到邮局到这9个村庄的总距离和最短。

A.(4.5,0)B.(4.5,4.5)C.(5,5)D.(5,0)7.n个人拎着水桶在一个水龙头前面排队打水,水桶有大有小,水桶必须打满水,水流恒定。

如下说法不正确?A.让水桶大的人先打水,可以使得每个人排队时间之和最小B.让水桶小的人先打水,可以使得每个人排队时间之和最小C.让水桶小的人先打水,在某个确定的时间t内,可以让尽可能多的人打上水D.若要在尽可能短的时间内,n个人都打完水,按照什么顺序其实都一样8.分治法的设计思想是将一个难以直接解决的大问题分割成规模较小的子问题,分别解决子问题,最后将子问题的解组合起来形成原问题的解。

算法设计与分析 期末试卷 A卷(完整含答案)

算法设计与分析 期末试卷 A卷(完整含答案)
因此: m[1][4] 8000
4、操场上摆放一行共n堆石头,呈直线排列。n堆石子从左到右方向编号为1~n,每堆石子 个数分别为a[1],…,a[n],现在要将石子有次序的合并为一堆,规定每次只能选相邻的2堆合 并为新的一堆,并将新的一堆的石子数记为该次合并的得分,经过n-1次合并,最终合并为 一堆,总得分为n-1次合并得分之和。现要设计一个算法,计算出将一行的n堆石子合并为一 堆的最小得分。这里假设m[i,j]为合并石子Ai…Aj, 1≤i≤j≤n,所得到的最小得分。请写出 m[i,j]的递推公式。 (5分)
3
m[1][3] min{m[1][1] m[2][3] p0 p1 p3 , m[1][2] m[3][3] p0 p2 p3} 7500; m[2][4] min{m[2][2] m[3][4] p1 p2 p4 , m[2][3] m[4][4] p1 p3 p4 } 5000;
则 O( f 2 (n)) O(_____________) 则 O( f 3 (n)) O(_____________) 则 O( f 4 (n)) O(_____________) 则 O( f 5 (n)) O(_____________)
n
f 4 (n) 2log n ,
参考解答:设 n 堆石子从左到右方向编号为 1,2,…,n,每堆石子个数分别为 a[1],…,a[n]。n 堆石子的合并有许多不同 的方式,每种合并方式对应于 n 个矩阵连乘的一种完全加括弧方式。显然,这里合并是满足最优子结构性质的,用 A1…An 来代表每堆的石子,则最后一次合并在 Ak 和 Ak+1 之间,则 A1…An 的最优合并为((A1…Ak)(Ak+1…An)),可以看出最优 解左边部分(A1…Ak)和右边部分(Ak+1…An)的合并也分别是最优的。 假设 m[i,j]为合并石子 Ai…Aj, 1≤i≤j≤n,所得到的最小得分,若没有“合并”这个动作,则为 0。原问题所求 的最优值即为 m[1,n]。

算法设计与分析参考试卷

算法设计与分析参考试卷

算法设计与分析参考试卷此处不能书写此处不能书写此处不能书…写………此处不能书写……………………………………………装……算法设计与分析参考试卷一、单项选择题1. 当输入规模为n时,下列算法渐进复杂性中最低的是(A )。

.A. 5nB. n2C. 2n2D. 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 页…………………………此处不能书写……一、问题单源最短路径问题[Dijkstra实现]带权有向图G(E,V), 找出从给定源顶点s到其它顶点v的权最小路径。

“最短路径” = 最小权二、问题求解:求1到5的最短路径值?三、执行过程:如果大家对这个问题的要求还不是很明白的话那么我再带着大家走一遍:第2页共9页此处不能书写此处不能书写此处不能书…写………此处不能书写……………………………………………装……第一次:从1-->2:10 此时从1-->3没有路径所有是无穷大 1-->4:30 1-->5:100那么我们发现这一组组最小的是10也就是2这一点,所以我们再把2这一点加到集合里面来,那么2这一点就可以当作一个桥来用,第二次:此时我们再从1à3就可以通过1-->2-->3:60其他的1-->4:301-->5:100 可以发现此时最小的应该是3,所以我们再把3这一点加入到这个集合里面来,如此重复的去做这些事情,到最后可以发现1à5的最短路径应该是60(1-->4-->3-->5)1. int dijkstra(int s,int t) {2.3. 初始化S={空集}4.5. d[s] = 0; 其余d值为正无穷大6.7. while (NOT t in S) 8.9. { 10.11. 取出不在S中的最小的d[i]; 12.13. for (所有不在S中且与i相邻的点j) 14.15. if (d[j] > d[i] + cost[i][j]) d[j] = d[i] + cost[i][j]; (“松弛”操作” ) 16.17. S = S + {i}; //把i点添加到集合S里 18.19. } 20.21. return d[t]; 22. 23. }……此…处…不能…书…写…线…………………………………订………此处不能书写…2.二分搜索要解决什么问题?二分搜索如何体现分治的思想? 简述二分搜索算法的步骤.…………………………此处不能书写查找法也称为二分查找法,它充分利用了元素间的次序关系,采用分治策略,可在最折第 3 页共 9 页……半坏的情况下用O(log n)完成搜索任务。

安全算法设计与分析考核试卷

安全算法设计与分析考核试卷
()
标准答案
一、单项选择题
1. C
2. D
3. C
4. B
5. D
6. A
7. B
8. C
9. B
10. B
11. D
12. D
13. A
14. A
15. C
16. A
17. D
18. B
19. C
20. D
二、多选题
1. A, B, D
2. A, B, C
3. A, B
4. A, C, D
5. A, B, C, D
C.证书序列号
D.证书有效期
9.以下哪些是安全协议设计时需要考虑的安全属性?()
A.机密性
B.完整性
C.可用性
D.可扩展性
10.以下哪些算法可以用于密钥交换?()
A. Diffie-Hellman
B. RSA
C. AES
D. SHA-256
11.以下哪些是身份验证协议的例子?()
A. OAuth
B. OpenID
A. ECB模式
B. CBC模式
C. CFB模式
D. OFB模式
11.以下哪个不是公钥基础设施(PKI)的组成部分?()
A.认证中心(CA)
B.注册中心(RA)
C.加密模块
D.证书回收列表(CRL)
12.在安全算法设计中,以下哪项原则不属于克努特安全原则?()
A.使用强加密算法
B.避免使用弱密钥
C.限制明文传输
3. ×
4. ×
5. √
6. ×
7. ×
8. √
9. ×
10. ×
五、主观题(参考)
1.对称加密算法使用相同的密钥进行加密和解密,速度快但密钥分发困难。非对称加密使用公私钥对,解密需要私钥。常见对称算法有AES、DES;非对称算法有RSA、ECC。

算法设计与分析试卷及答案

算法设计与分析试卷及答案

湖南科技学院二○年学期期末考试信息与计算科学专业年级《算法设计与分析》试题考试类型:开卷试卷类型: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<typenameType>Swap(R[k],R[i]);}}}四、算法设计(共计15分)设有n个程序{1,2,3...,n}要存放在长度为L的磁带上。

程序i存放在磁带上的长度是Li,1≤i≤n。

程序存储问题要求确定这n个程序在磁带上的一个存储方案,使得能够在磁带上存储尽可能多的程序,在保证存储最多程序的前提下还要求磁带的利用率达到最大。

(1)给出求解存储最多程序的算法,并证明算法的正确性;(2)给出求解使磁带的利用率达到最大的方案的算法思路。

五、算法设计(共计15分)通过键盘输入一个高精度的正整数n (n 的有效位数≤240),去掉其中任意s 个数字后,剩下的数字按原左右次序将组成一个新的正整数。

对给定的n 和s ,寻找一种方案,使得剩下的数字组成的新最小。

数据结构与算法设计与分析考核试卷

数据结构与算法设计与分析考核试卷
答案:______
8.在冒泡排序中,每一趟排序都能确定一个元素的最终位置。()
答案:______
9. Prim算法和Kruskal算法都可以用来求解最小生成树问题,但Prim算法总是从某一顶点开始,而Kruskal算法总是从某一权值最小的边开始。()
答案:______
10.在一个递归算法中,如果递归调用不是算法的最后一个操作,那么这种递归称为尾递归。()
B.邻接表适合表示稀疏图
C.邻接多重表适合表示无向图
D.邻接表和邻接多重表适合表示有向图
14.以下哪些算法属于分治算法?()
A.快速排序
B.归并排序
C.二分查找
D.动态规划
15.以下哪些情况下,动态规划比贪心算法更适合解决问题?()
A.存在重叠子问题
B.问题具有最优子结构
C.需要考虑所有可能的选择
D.问题可以通过局部最优达到全局最优
C.插入一个节点
D.查找某个节点
5.以下哪些算法可以用于解决最小生成树问题?()
A. Kruskal算法
B. Prim算法
C. Dijkstra算法
D. Bellman-Ford算法
6.以下哪些数据结构可以用来实现堆?()
A.数组
B.链表
C.栈
D.队列
7.关于图的深度优先遍历和广度优先遍历,以下哪些说法是正确的?()
________________________________
2.动态规划算法通常用于解决最优化问题,请阐述动态规划算法的三个基本要素,并给出一个动态规划问题的实例。
________________________________
________________________________

《算法分析与设计试卷2016-2017》

《算法分析与设计试卷2016-2017》

《算法分析与设计》试卷(A)(时间90分钟满分100分)B )。

A、分支界限法B、动态规划法C、贪心法D、回溯法2.在对问题的解空间树进行搜索的方法中,一个活结点最多有一次机会成为活结点的是( B ).A.回溯法B.分支限界法C.回溯法和分支限界法D.回溯法求解子集树问题3.实现最大子段和利用的算法是( B )。

A、分治策略B、动态规划法C、贪心法D、回溯法4..广度优先是( A )的一搜索方式。

A、分支界限法B、动态规划法C、贪心法D、回溯法5.衡量一个算法好坏的标准是( C )。

A 运行速度快B 占用空间少C 时间复杂度低D 代码短6.Strassen矩阵乘法是利用( A)实现的算法。

A、分治策略B、动态规划法C、贪心法D、回溯法7. 使用分治法求解不需要满足的条件是( A )。

A 子问题必须是一样的B 子问题不能够重复C 子问题的解可以合并D 原问题和子问题使用相同的方法解8.用动态规划算法解决最大字段和问题,其时间复杂性为( B ).A.lognB.nC.n2D.nlogn9.解决活动安排问题,最好用( B )算法A.分治B.贪心C.动态规划D.穷举10.下面哪种函数是回溯法中为避免无效搜索采取的策略( B )A.递归函数 B.剪枝函数C。

随机数函数 D.搜索函数11. 从活结点表中选择下一个扩展结点的不同方式将导致不同的分支限界法,以下除( C )之外都是最常见的方式.A.队列式分支限界法B.优先队列式分支限界法C.栈式分支限界法D.FIFO分支限界法12. .回溯算法和分支限界法的问题的解空间树不会是( D ).A.有序树B.子集树C.排列树D.无序树13.优先队列式分支限界法选取扩展结点的原则是( C )。

A、先进先出B、后进先出C、结点的优先级D、随机14.下面是贪心算法的基本要素的是( C )。

A、重叠子问题B、构造最优解C、贪心选择性质D、定义最优解15.回溯法在解空间树T上的搜索方式是( A ).A.深度优先B.广度优先C.最小耗费优先D.活结点优先二、填空题(20分,每空1分)。

《算法设计与分析》试卷及答案

《算法设计与分析》试卷及答案

《算法设计与分析》试卷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=__________。

A.Fn=Fn-1+Fn-2 B、h(n)= 2h(n-1)+1C.1 D、h(1)= 1E、h(n)=2n-1F、06.在一个有向连通图中(如下图所示), 找出点A到点B的一条最短路为____ ______。

A.最短路: 1→3→5→8→10, 耗费: 20B、最短路:1→4→6→9→10, 耗费:16C.最短路: 1→4→6→9, 耗费: 12D.最短路: 4→6→9→10, 耗费: 13二、填空(每空2分, 共20分):1.快速排序法的基本思想是重新排列关键字, 把一个文件分成两个文件, 使得第一个文件中所有元素均小于第二个文件中的元素;然后再对两个子文件进行同样的处理。

华南农业大学算法设计与分析 期末试卷 A卷(完整含答案)2011.6

华南农业大学算法设计与分析 期末试卷 A卷(完整含答案)2011.6
华南农业大学期末考试试卷(A 卷)
2010 学年第二学期 考试类型: (闭卷)考试 考试科目: 考试时间: 算法分析与设计 120 分钟
学号 题号 得分 评阅人
姓名 一 二
年级专业 三 四 总分
装 订 线
注意:所有答案请写在答卷上,写在试卷上不得分。 一、选择题(本大题共10小题,每小题2分,共20分)
装 订
二、应用题(本大题共5小题,每小题6分,共30分)
1、对于以下程序段,分析其最坏时间复杂度。 int F(int n) { if (n == 0) return 1; else return F(n-1)*n; } 解:T(n) = T(n-1) + 1 n=0 T(n) = T(n-1) + 1 n>0 得 T(n)=O(n) 2、将下列复杂性函数按照渐进阶从低到高排序。
1、渐进算法分析是指( ) 。B (A)算法在最佳情况、最差情况和平均情况下的代价 (B)当规模逐步往极限方向增大时,对算法资源开销“增长率”上的简化分析 (C)数据结构所占用的空间 (D)在最小输入规模下算法的资源代价 2、下列算法中通常以自底向上的方式求解最优解的是( (A)备忘录法 (B)动态规划法 (C)贪心法 (D)回溯法 ) 。B
1i j
a },
k k i
1 i j n ,则对于n个整数序列的最大子
段和问题, max b[ j ] 即为所求。
1 j n
动态规划递归式: b[ j ]
max{0, a[1]} max{b[ j 1] a[ j ], a[ j ]}
j 1 1 j n
四、算法设计题(本大题共2小题,每小题15分,共30分)
1、 【最长上升子序列问题】 (15 分)

算法设计与分析试卷试题(A)(附答案)

算法设计与分析试卷试题(A)(附答案)

chengcheng算法分析考试试卷(A卷)课程名称算法分析编号题号一二三四总分得分评阅人一、填空题(每小题3分,共30分)1、一个算法的优劣可以用空间复杂度与时间复杂度来衡量。

2、这种不断回头寻找目标的方法称为回溯法。

3、直接或间接地调用自身的算法称为递归算法。

4、 记号在算法复杂性的表示法中表示紧致界。

5、由分治法产生的子问题往往是原问题较小模式,这就为使用递归技术提供了方便。

6、建立计算模型的目的是为了使问题的计算复杂性分析有一个共同的客观尺度。

7、下列各步骤的先后顺序是②③④①。

①调试程序②分析问题③设计算法④编写程序。

8、最优子结构性质的含义是问题最优解包含其子问题最优解。

9、贪心算法从初始阶段开始,每一个阶段总是作一个使局部最优的贪心选择。

10、拉斯维加斯算法找到的解一定是正确的。

二、选择题(每小题2分,共20分)1、哈夫曼编码可利用( C )算法实现。

A、分治策略B、动态规划法C、贪心法D、回溯法2、下列不是基本计算模型的是( B )。

A、RAMB、ROMC、RASPD、TM3、下列算法中通常以自顶向下的方式求解最优解的是( C)。

A、分治法B、动态规划法C、贪心法D、回溯法chengcheng 4、在对问题的解空间树进行搜索的方法中,一个活结点有多次机会成为活结点的是( A )A、回溯法B、分支限界法C、回溯法和分支限界法D、动态规划5、秦始皇吞并六国使用的远交近攻,逐个击破的连横策略采用了以下哪种算法思想? BA、递归;B、分治;C、迭代;D、模拟。

6、FIFO是( A )的一搜索方式。

A、分支界限法B、动态规划法C、贪心法D、回溯法7、投点法是( B )的一种。

A、分支界限算法B、概率算法C、贪心算法D、回溯算法8、若线性规划问题存在最优解,它一定不在( C )A.可行域的某个顶点上 B.可行域的某条边上 C.可行域内部 D.以上都不对9、在一般输入数据的程序里,输入多多少少会影响到算法的计算复杂度,为了消除这种影响可用( B )对输入进行预处理。

算法设计与分析(试题A卷)

算法设计与分析(试题A卷)

四川师范大学成教×××专业×××层次半脱产形式期末考试期末试卷第1页( 共6页)《算法设计与分析》课程试卷(A)答卷说明:1、考试方式 闭卷2、满分100分一、单项选择题(每小题3分,共30分)1、动态规划算法的基本要素为( )。

A 、最优子结构性质与贪心选择性质B 、重叠子问题性质与贪心选择性质C 、最优子结构性质与重叠子问题性质D.、预排序与递归调用2、算法分析中,记号O 表示( ),记号Ω表示( ),记号Θ表示( )。

A 、渐进下界B 、渐进上界C 、非紧上界D 、紧渐进界E 、非紧下界3、以下关于渐进记号的性质是正确的有:( )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 、O(f(n))+O(g(n)) = O(min{f(n),g(n)})D 、f (n)O(g(n))g(n)O(f (n))=⇔=4、下列算法中通常以自底向上的方式求解最优解的是( )。

四川师范大学成教××专业××层次××形式期末考试 ××试卷 第2页( 共6页) A 、备忘录法 B 、动态规划法 C 、贪心法 D 、回溯法5、衡量一个算法好坏的标准是( )。

A 、运行速度快B 、占用空间少C 、时间复杂度低D 、代码段6、实现棋盘覆盖算法利用的算法是( )。

A 、分治法B 、动态规划法C 、贪心法D 、回溯法7、下面关于NP 问题说法正确的是( )。

A 、NP 问题都是不可能解决的问题B 、P 类问题包含在NP 类问题中C 、NP 完全问题是P 类问题的子集D 、NP 类问题包含在P 类问题中8、矩阵连乘问题的算法可由( )设计实现。

A 、分支界限算法B 、动态规划算法C 、贪心算法9、( )是贪心算法与动态规划算法的共同点。

计算机算法试题(含答案)

计算机算法试题(含答案)

算法设计与分析试卷一、填空题(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;}}return sum;}4、设计最优二叉搜索树问题的动态规划算法OptimalBinarysearchTree? (15分)Void OptimalBinarysearchTree(int a,int n,int * * m, int * * w) {for(int i=0;i<=n;i++) {w[i+1][i]=a[i]; m[i+1][i]=____;} for(int r=0;r<n;r++)for(int i=1;i<=n-r;i++){int j=i+r;w[i][j]=w[i][j-1]+a[j]+b[j];m[i][j]=______;s[i][j]=i;for(int k=i+1;k<=j;k++){int t=m[i][k-1]+m[k+1][j];if(_____) {m[i][j]=t; s[i][j]=k;}}m[i][j]=t; s[i][j]=k;}}5、设n=4, (a1,a2,a3,a4)=(3,4,8,10), (b1,b2,b3,b4)=(6,2,9,15) 用两种方法求4个作业的最优调度方案并计算其最优值?(15分)三、简答题(30分)1、将所给定序列a[1:n]分为长度相等的两段a[1:n/2]和a[n/2+1:n],分别求出这两段的最大子段和,则a[1:n]的最大子段和有哪三种情形?(10分)答:2、由0——1背包问题的最优子结构性质,可以对m(i,j)建立怎样的递归式? (10分)3、0——1背包求最优值的步骤分为哪几步?(10分)参考答案:填空题:确定性分解成若干个子问题最优解的性质递归地定义最优值以自底向上的方式计算出最优值构造最优解{i|ai<bi} ai的非减序排序;将N2中作业依bi的非增序排序min{bπ(i),aπ(i+1)}≥min{bπ(i+1),aπ(i)}最小平均查找长度综合题:20 min{ai+T(N-{i},bi)}(1=<i<=n) thissum+=a[k] besti=i 0 m[i+1][j] t<m[i][j]法一:min(ai,bj)<=min(aj,bi)因为min(a1,b2)<=min(a2,b1)所以1→2 (先1后2)由min(a1,b3)<=min(a3,b1)得1→3 (先1后3)同理可得:最后为1→3→4→2法二:johnson算法思想N1={1,3,4} N2={2}N¹1={1,3,4} N¹2={2}所以 N¹1→N¹2得:1→3→4→2简答题:1 、(1)a[1:n]的最大子段和与a[1:n/2]的最大子段和相同。

2009.1算法设计与分析课程期末试卷-A卷(含答案)

2009.1算法设计与分析课程期末试卷-A卷(含答案)

华南农业大学期末考试试卷(A卷)2008学年第一学期考试科目:算法分析与设计考试类型:(闭卷)考试时间:120分钟学号姓名年级专业一、选择题(20分,每题2分)1.下述表达不正确的是。

DA.n2/2 + 2n的渐进表达式上界函数是O(2n)B.n2/2 + 2n的渐进表达式下界函数是Ω(2n)C.logn3的渐进表达式上界函数是O(logn)D.logn3的渐进表达式下界函数是Ω(n3)2.当输入规模为n时,算法增长率最大的是。

AA.5n B.20log2n C.2n2D.3nlog3n3.T(n)表示当输入规模为n时的算法效率,以下算法效率最优的是。

C A.T(n)= T(n – 1)+1,T(1)=1 B.T(n)= 2n2C.T(n)= T(n/2)+1,T(1)=1 D.T(n)= 3nlog2n4.在棋盘覆盖问题中,对于2k×2k的特殊棋盘(有一个特殊方块),所需的L型骨牌的个数是。

AA.(4k– 1)/3 B.2k /3 C.4k D.2k5.在寻找n个元素中第k小元素问题中,若使用快速排序算法思想,运用分治算法对n个元素进行划分,应如何选择划分基准?下面答案解释最合理。

DA.随机选择一个元素作为划分基准B.取子序列的第一个元素作为划分基准C.用中位数的中位数方法寻找划分基准D.以上皆可行。

但不同方法,算法复杂度上界可能不同6.个村庄服务,请问邮局应该盖在才能使到邮局到这9个村庄的总距离和最短。

CA.(4.5,0)B.(4.5,4.5)C.(5,5)D.(5,0)7.n个人拎着水桶在一个水龙头前面排队打水,水桶有大有小,水桶必须打满水,水流恒定。

如下说法不正确?AA.让水桶大的人先打水,可以使得每个人排队时间之和最小B.让水桶小的人先打水,可以使得每个人排队时间之和最小C.让水桶小的人先打水,在某个确定的时间t内,可以让尽可能多的人打上水D.若要在尽可能短的时间内,n个人都打完水,按照什么顺序其实都一样8.分治法的设计思想是将一个难以直接解决的大问题分割成规模较小的子问题,分别解决子问题,最后将子问题的解组合起来形成原问题的解。

算法试卷

算法试卷

算法设计与分析课程试题一一、选择题1.选出不是算法所必须具备的特征()。

A有穷性B确切性C高效性D可行性2.下列()不是衡量算法的标准。

A 时间效率B 空间效率C 问题的难度D 适应能力3.与递推关系x(n)=2x(n-1)+1,x(1)=1等价的通项公式为()。

A x(n)=2nB x(n)=2n-1C x(n)=2n+1D 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、满足显示约束的所有元组不能确定一个可能的解空间,D、隐式约束描述了元组中元素x i必须彼此相关的情况。

二、填空1.算法区别于程序:。

2.递推公式x(n)=x(n-1)+n,x(0)=0,x(n)= 。

3..按分治策略求解棋盘覆盖问题时,对于如图1所示的23×23的特殊棋盘,共需要____个L型骨牌;并在棋盘上填写L型骨牌的覆盖情况。

+ + - + - +++ - - - - + - + + + -- + + - - + -- - +图1 棋盘覆盖 图2 符号三角形4.对下述五个文件用贪心方法进行最优归并:文件x 1,x 2,x 3,x 4和x 5分别有18,24,8,6和28个记录;则文件移动的最少次数为:。

算法设计分析期末考试试卷

算法设计分析期末考试试卷

2011 年 12 月考试算法设计分析第一次作业一、单项选择题(本大题共 30 分,共 15 小题,每小题 2 分)1. 算法分析的两个主要方面是()。

A. 空间复杂度和时间复杂度B. 正确性和简单性C. 可读性和文档性D. 数据复杂度和程序复杂度2. 计算机算法指的是()。

A. 计算方法B. 排序方法C. 解决问题的方法和过程D. 调度方法3. 多阶段决策问题就是要在可以选择的那些策略中间选取一个()策略使在预定的标准下达到最好的效果。

A. 最优B. 最差C. 平衡D. 任意4. 根据排序元素所在位置的不同,排序分()。

A. 内排序和外排序B. 首排序和尾排序C. 顺序排序和逆序排序D. 堆排序和栈排序5. 算法必须具备输入、输出和()等 5 个特性。

A. 可执行性、可移植性和可扩充性B. 可行性、确定性和有穷性C. 确定性、有穷性和稳定性D. 易读性、稳定性和安全性6. 与分治法不同的是,适合于用动态规划求解的问题()A. 经分解得到子问题往往不是互相独立的B. 经分解得到子问题往往是互相独立的C. 经分解得到子问题往往是互相交叉的D. 经分解得到子问题往往是任意的7. 二分搜索算法的基本思想是将 n 个元素分成个数大致相同的两半,取 an/2与 x 进行比较:如果(),则只要在数组 a 的左半部继续搜索 x。

A. x<an/2B. xan/2C. xan/2D. xan/28. 活动安排问题就是在所给的活动集合中,选出()的相容活子集。

A. 最小B. 任意C. 最大D. 一个9. 在对问题的解空间树进行搜索的方法中一个活结点最多有一次机会成为活结点的是()A. 回溯法B. 分支限界法C. 回溯法和分支限界法D. 回溯法求解子集树问题10. 适用动态规划的问题必须满足()A. 最优化原理B. 无前效性C. 最优化原理和后效性D. 最优化原理和无后效性11. 算法的每种运算必须要有确切的定义不能有二义性以下符合算法确定性运算的是()A. 5/0B. 将 6 或 7 与 x 相加C. 未赋值变量参与运算D. fnfn-12F110n 为自然数12.直接或间接的调用自身的算法称为()。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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背包问题的应用作简单的描述.。

相关文档
最新文档