算法设计与分析(试题A卷)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
四川师范大学成教×××专业×××层次半脱产形式期末考试期末试卷第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、( )是贪心算法与动态规划算法的共同点。
A 、重叠子问题
B 、构造最优解
C 、贪心选择性质
D 、最优子结构性质
10、Hanoi 塔问题如下图所示。现要求将塔座A 上的的所有圆盘移到塔座B 上,并仍按同样顺序叠置。移动圆盘时遵守Hanoi 塔问题的移动规则。由此设计出解Hanoi 塔问题的递归算法正确的为:( )
A. void hanoi(int n, int A, int C, int B)
{ if (n > 0) {
hanoi(n-1,A,C, B); move(n,a,b); hanoi(n-1, C, B, A);
} B. void hanoi(int n, int A, int B, int C) {
if (n > 0) {
hanoi(n-1, A, C, B); move(n,a,b);
hanoi(n-1, C, B, A);
}
二、填空题(每空2分,共18分)
1、下面程序段的所需要的计算时间为。
Int MaxSum(int n, int *a, int &besti, int &bestj)
{
int sum=0;
for(int i=1;i<=n;i++){
int thissum=0;
for(int j=i;j<=n;j++){
This sum+=a[j];
if(thissum>sum) {
四川师范大学成教×××专业×××层次半脱产形式期末考试期末试卷第3页( 共6页)
sum=this sum;
besti=i;
bestj=j;
}
}
}
return sum;
}
2、算法的复杂性有复杂性和复杂性之分。
3、程序是用某种程序设计语言的具体实现。
4、算法是指解决问题的或。
5、从分治法的一般设计模式可以看出,用它设计出的程序一般是。
6、计算一个算法时间复杂度通常可以计算、或计算步。
三、证明题(每小题10分,共20分)
1、举反例证明0/1背包问题若使用的算法是按照p i/w i的非递减次序考虑选择的物品,即只要正在被考虑的物品装得进就装入背包,则此方法不一定能得到最优解(此题说明0/1背包问题与背包问题的不同)。
2、求证:O(f(n))+O(g(n)) = O(max{f(n),g(n)})
四川师范大学成教××专业××层次××形式期末考试××试卷第4页( 共6页)
四、算法设计题(1小题10分、2小题12分、3小题10分,共32分)
1、老板有一袋金块(共n块,n是2的幂(n>=2)),最优秀的雇员得到其中最重的一块,最差的雇员得到其中最轻的一块。假设有一台比较重量的仪器,希望用最少的比较次数找出最重的金块。(要求:用二分法解决问题。)
四川师范大学成教×××专业×××层次半脱产形式期末考试期末试卷第5页( 共6页)
2、部分背包问题:一个商人带着一个能装M千克的背包去乡下收购货物,准备将这些货物卖到城里获利。现在已知有多种货源,知道每一种货物的重量和获利情况。请编写算法帮助商人收购货物,以获取最高的利润。
3、百钱百鸡问题。中国古代数学家张丘建在他的《算经》中提出了著名的“百钱百鸡问题”:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,翁、母、雏各几何?
四川师范大学成教××专业××层次××形式期末考试××试卷第6页( 共6页)