算法设计复习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、选择题
1.选出不是算法所必须具备的特征(C)。
A有穷性B确切性C高效性D可行性
2.不属于给合问题的是(C )。
A Euler的36名军官问题
B 图的Hamiliton C求二项式展开系数 D 集合的幂集3.下列(
C )不是衡量算法的标准。
A 时间效率
B 空间效率
C 问题的难度
D 适应能力
4.下列函数关系随着输入量增大增加量最快的是(D )。
A logn Bn3 C2n D n!
5.如果某一算法的执行时间不超过输入规模的2倍,那么算法渐近时间复杂度为(B )。
A O(2n)
B O(n) CΘ (n) D Ω(n)
6.下列程序段的算法时间复杂度是(D )
for (i=1;i<=n;i++)
for (j=1;i<=m;m++)
S;
A O(n2)
B O(m2)
C O(m+n)
D O(mn)
7.下列程序段S执行次数为(C )。
for (i=1;i<=n;i++)
for (j=1;i<=m;m++)
S;
A n2
B n2/2
C n(n+1)
D n(n+1)/2
8.使用F(n)=n*f(n-1)递归求F(4),递归调用子函数的次数为(D )。
A 3次
B 4次
C 5次
D 8次
9.递推关系M(n)=M(n-1)+1,M(0)=0的算法时间复杂度为(C )。
A O(n!)
B O(2n)
C O(n)
D O(1)
10.与递推关系x(n)=2x(n-1)+1,x(1)=1等价的通项公式为(B )。
A x(n)=2n
B x(n)=2n-1
C x(n)=2n+1
D x(n)=n!
11.三个盘子的汉诺塔,至少要执行移动操作次数为( D )。
A1次 B 3次 C 6次 D 7次
12.Fibonacci数列第10项为(D)。
A 3
B 13
C 21
D 34
13.12个金币中有一枚是假币,至少需要称量的次数是(C )。
A 0
B 1
C 3
D 4
14.二维最近邻点问题,如果使用分治法,对于一个子集上的某一点,另一个子集上需要检查的点的个数是(C )。
A 1个
B 2个
C 6个
D 8个
15.一维最近邻点问题,如果使用分治法,对于一个子集上的某一点,另一个子集上需要检查的点的个数是(B )。
A 1个
B 2个
C 6个
D 8个
15.下列图形不属于凸集的是( D )。
A 三角形
B 四边形
C 五边形
D 五角星
16.对于凸集下列说法正确的是(B )。
A 凸集中的所有点都属于凸包;
B 凸集中任意两点的连线都在凸中;
C 凸集中任意两点的连线都不在凸集中;D一个点集如果不是凸集,则点集中任意两点的连线都不在凸集中
17.下列是动态规划算法基本要素的是(A )。
A 最优子结构B构造最优解 C 贪心选择因子D界限函数18.下列问题中具有多项式解法的是(C)。
A背包问题B生成排列序列问题 C n个元素的排序问题 D 集合的幂集问题19.如果背包的容量为100,而物体共有10件,则使用动态规划求解背包问题数组大小为(D )。
A 10
B 100
C 1000
D 10000
20.排列问题属于( D )。
A 可解问题B不可解问题 C P问题 D NP问题
21.(A )算法应用到广度优先遍历策略。
A 分支界限法
B 动态规划法C分治法D回溯法
22.Dijstra算法属于(A )。
A 贪心算法B概率算法C回溯法D分支限界法
23.若f(n)=2n3+3n,g(n)=100n2+2n+100,则f=O(g)为(B )。
A 真
B 假
C 无法确定D均不是
24.若f(n)=50n+logn,g(n)=10n+loglogn,则f=O(g)为(A )。
A 真
B 假
C 无法确定D均不是
25.Prim算法求最小生成树采用的是(A )算法思想。
A 贪心算法
B 动态规划法
C 回溯法
D 蛮力法
二、简答题
1.给出递推公式x(n)=x(n-1)+n,x(0)=0对应的通项公式计算过程?
解:
X(n)-X(n-1)=n
X(n-1)-X(n-2)=n-1
…………
X(1)-X(0)=1
X(n)-X(0)=(n+1)n\2
X(n)= (n+1)n\2
2.O、Θ、Ω之间的区别与联系是什么?
答:O描述增长率的上限
Θ用来表示算法的精确阶
Ω描述增长率的下限
只要当考察问题规模充分大时,算法中基本语句的执行次数在渐近意义下的阶,……3种等渐近符号。
3.什么是数据结构,什么是算法,两者有什么关系?
答:
数据结构:计算机存储/族素质数据的方式。
算法:一系列解决问题的指令。
程序=算法+数据结构
4.将4n2,log n,3n,20n,2,n2/3,n!按渐近阶从低到高顺序排序。
答:
2