2009.1算法设计与分析课程期末试卷-A卷(自测 )

合集下载

2009年《数据结构》试卷A答案

2009年《数据结构》试卷A答案

西华大学课程考试参考答案(A卷)

课程代码: 8401801 试卷总分: 100 分

一、单项选择题参考答案及评分标准:(本大题共20个小题,每小题2分,共40分)

评分标准:选对一题得2分,不选或选错得0分。

1-5:CBACC 6-10:CCBDB 11-15:ABCCD 16-20:CADDC

二、算法理解题参考答案及评分标准:(本大题共3个小题,第1、2小题各7分,第3小题6分,共20分)

评分标准:请根据各解答步骤酌情给分。

1. 解:构造过程各图(略),最后结果为:

2. 解:设权w=(5,29,7,8,14,23,3,11),可构造一棵赫夫曼树如下图所示。

所得赫夫曼编码为:

A: 0110

B: 10

C: 1110

D: 1111

E: 110

F: 00

G: 0111

H: 010

3. 解:

(1)希尔排序

第一趟(增量d=5)排序后 7、12、36、23、12、51、60、55、72、49

第二趟(增量d=3)排序后 7、12、36、23、12、51、49、55、72、60

第三趟(增量d=1)排序后 7、12、12、23、36、49、51、55、60、72

(2)归并排序

第一趟排序后 12、51、23、55、7、49、36、60、12、72

第一趟排序后 12、23、51、55、7、36、49、60、12、72

第三趟排序后 7、12、23、36、49、51、55、60、12、72

第四趟排序后 7、12、12、23、36、49、51、55、60、72

三、算法设计题参考答案及评分标准:(本大题共4个小题,每小题10分,共40分)

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.20log

2n C.2n2 D.3nlog

3

n

3.T(n)表示当输入规模为n时的算法效率,以下算法效率最优的是。A.T(n)= T(n – 1)+1,T(1)=1 B.T(n)= 2n2

C.T(n)= T(n/2)+1,T(1)=1 D.T(n)= 3nlog

2

n

4.在棋盘覆盖问题中,对于2k×2k的特殊棋盘(有一个特殊方块),所需的L型骨

牌的个数是。

A.(4k– 1)/3 B.2k /3 C.4k D.2k

5.在寻找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)

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

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

装订线

华南农业大学期末考试试卷(A卷) 2012学年第1学期 考试科目:算法设计与分析

考试类型:(闭卷)考试 考试时间:120 分钟

学号姓名年级专业

题号一(20) 二(25) 三(16) 四(24) 五(15) 总分

得分

评阅人

说明:

(1)请勿漏填学号姓名等信息。本试卷仅一份,请将答案直接填于试卷上,莫将试卷当草稿,想好了再写,若空白的位置不够,标注清楚后可以写反面;

(2)答题时,对算法的描述可以采用文字、公式、图、伪代码、实例说明等混合形式。请注意表达应条理清晰,思想简洁,勿长篇累述不得要领。

得分

一、填空题(1~3题每空1分,第4题每空2分,共20分,结果直接填于划线处)

1、化简下面f(n)函数的渐进上界表达式。(5分)

n

n

n

f3

2/

)

(2

1

,则____)

(_________

))

(

(

1

O

n

f

O

3

2

2

)

(

n

n

f,则____)

(_________

))

(

(

2

O

n

f

O

3

3

log

)

(n

n

f ,则____)

(_________

))

(

(

3

O

n

f

O

2

log

4

2

)

(n

n

f ,则____)

(_________

))

(

(

4

O

n

f

O

n

n

f3

log

)

(

5

,则____)

(_________

))

(

(

5

O

n

f

O

参考解答:)

3(

))

(

(

1

n

O

n

f

O ;)

2(

))

(

(

2

n

O

n

f

O ;)

(log

))

(

(

3

n

O

n

f

O ;

)

(

))

(

(2

4

n

O

n

f

O ;)

(

))

(

(

5

n

O

n

f

O 。

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

算法1:O( );

算法2:O( );

1

2

算法3:O( )

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

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

算法设计与分析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

《算法设计与分析》考试题目及答案(DOC)

《算法设计与分析》考试题目及答案(DOC)

else
for (int i=0;i<=1;i++) {
x[t]=i;
if (legal(t)) backtrack(t-1);
}
}
D. void backtrack (int t) { if (t>n) output(x); else for (int i=t;i<=n;i++) { swap(x[t], x[i]); if (legal(t)) backtrack(t+1); } }
}
Hanoi 塔
D. void hanoi(int n, int C, int A, int B) { if (n > 0) { hanoi(n-1, A, C, B); move(n,a,b); hanoi(n-1, C, B, A); }
3. 动态规} 划算法的基本要素为(C) A. 最优子结构性质与贪心选择性质 B.重叠子问题性质与贪心选择性质 C.最优子结构性质与重叠子问题性质 D. 预排序与递归调用
C.最优子结构性质与重叠子问题性质 D. 预排序与递归调用
7. 回溯法在问题的解空间树中,按(D)策略,从根结点出发搜索解空间树。 A. 广度优先 B. 活结点优先 C.扩展结点优先 D. 深度优先
8. 分支限界法在问题的解空间树中,按(A)策略,从根结点出发搜索解空间 树。

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

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

华南农业大学期末考试试卷(A卷)

2008学年第一学期考试科目:算法分析与设计

考试类型:(闭卷)考试时间:120分钟

学号姓名年级专业

一、选择题(20分,每题2分)

1.下述表达不正确的是。D

A.n2/2 + 2n的渐进表达式上界函数是O(2n)

B.n2/2 + 2n的渐进表达式下界函数是Ω(2n)

C.logn3的渐进表达式上界函数是O(logn)

D.logn3的渐进表达式下界函数是Ω(n3)

2.当输入规模为n时,算法增长率最大的是。A

A.5n B.20log2n C.2n2D.3nlog3n

3.T(n)表示当输入规模为n时的算法效率,以下算法效率最优的是。C A.T(n)= T(n – 1)+1,T(1)=1 B.T(n)= 2n2

C.T(n)= T(n/2)+1,T(1)=1 D.T(n)= 3nlog2n

4.在棋盘覆盖问题中,对于2k×2k的特殊棋盘(有一个特殊方块),所需的L型骨

牌的个数是。A

A.(4k– 1)/3 B.2k /3 C.4k D.2k

5.在寻找n个元素中第k小元素问题中,若使用快速排序算法思想,运用分治算法

对n个元素进行划分,应如何选择划分基准?下面答案解释最合理。D A.随机选择一个元素作为划分基准

B.取子序列的第一个元素作为划分基准

C.用中位数的中位数方法寻找划分基准

D.以上皆可行。但不同方法,算法复杂度上界可能不同

6.

现在要盖一所邮局为这9个村庄服务,请问邮局应该盖在才能使到邮局到这9个村庄的总距离和最短。C

A.(4.5,0)B.(4.5,4.5)C.(5,5)D.(5,0)

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.20log

2n C.2n2 D.3nlog

3

n

3.T(n)表示当输入规模为n时的算法效率,以下算法效率最优的是。A.T(n)= T(n – 1)+1,T(1)=1 B.T(n)= 2n2

C.T(n)= T(n/2)+1,T(1)=1 D.T(n)= 3nlog

2

n

4.在棋盘覆盖问题中,对于2k×2k的特殊棋盘(有一个特殊方块),所需的L型骨

牌的个数是。

A.(4k– 1)/3 B.2k /3 C.4k D.2k

5.在寻找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)

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

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

cheng

cheng

算法分析考试试卷(A卷)

课程名称算法分析编号

题号一二三四总分

得分

评阅人

一、填空题(每小题3分,共30分)

1、一个算法的优劣可以用空间复杂度与时间复杂度来衡量。

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

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

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

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

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

7、下列各步骤的先后顺序是②③④①。①调试程序②分析问题③设计算法④编写程序。

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

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

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

二、选择题(每小题2分,共20分)

1、哈夫曼编码可利用( C )算法实现。

A、分治策略

B、动态规划法

C、贪心法

D、回溯法

2、下列不是基本计算模型的是( B )。

A、RAM

B、ROM

C、RASP

D、TM

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

A、分治法

B、动态规划法

C、贪心法

D、回溯法

cheng

cheng 4、在对问题的解空间树进行搜索的方法中,一个活结点有多次机会成为活结点的是( A )

A、回溯法

B、分支限界法

C、回溯法和分支限界法

D、动态规划

5、秦始皇吞并六国使用的远交近攻,逐个击破的连横策略采用了以下哪种算法思想? B

A、递归;

B、分治;

C、迭代;

D、模拟。

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

《算法设计与分析》考试题目及答案

《算法设计与分析》考试题目及答案

《算法分析与设计》期末复习题

一、选择题

1.应用Johnson法则的流水作业调度采用的算法是(D)

A. 贪心算法

B. 分支限界法

C.分治法

D. 动态规划算法

2.Hanoi塔问题如下图所示。现要求将塔座A上的的所有圆盘移到塔座B上,并仍按同样顺序叠置。移动圆盘时遵守Hanoi塔问题的移动规则。由此设计出解Hanoi塔问题的递归算法正确的为:(B)

Hanoi塔

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. O(f(n))+O(g(n)) = O(min{f(n),g(n)})

D. f(n)O(g(n))g(n)O(f(n))

=⇔=

6.能采用贪心算法求最优解的问题,一般具有的重要性质为:(A)

A. 最优子结构性质与贪心选择性质

B.重叠子问题性质与贪心选择性质

C.最优子结构性质与重叠子问题性质

D. 预排序与递归调用

7. 回溯法在问题的解空间树中,按(D)策略,从根结点出发搜索解空间树。广度优先 B. 活结点

优先 C.扩展结点优先 D. 深度优先

8. 分支限界法在问题的解空间树中,按(A)策略,从根结点出发搜索解空间树。 A.广度优先 B. 活结点优先 C.扩展结点优先 D. 深度优先

9. 程序块(A)是回溯法中遍历排列树的算法框架程序。

《算法分析与设计》期末试题及参考答案

《算法分析与设计》期末试题及参考答案

《算法分析与设计》期末试题及参考答案

一、简要回答下列问题:

1.算法重要特性是什么?

1.确定性、可行性、输入、输出、有穷性

2.

2.算法分析的目的是什么?

2.分析算法占用计算机资源的情况,对算法做出比较和评价,设计出额更好的算法。

3.

3.算法的时间复杂性与问题的什么因素相关?

3. 算法的时间复杂性与问题的规模相关,是问题大小n的函数。

4.算法的渐进时间复杂性的含义?

4.当问题的规模n趋向无穷大时,影响算法效率的重要因素是T(n)的数量级,而其他因素仅是使时间复杂度相差常数倍,因此可以用T(n)的数量级(阶)评价算法。时间复杂度T(n)的数量级(阶)称为渐进时间复杂性。

5.最坏情况下的时间复杂性和平均时间复杂性有什么不同?

5. 最坏情况下的时间复杂性和平均时间复杂性考察的是n固定时,不同输入实例下的

算法所耗时间。最坏情况下的时间复杂性取的输入实例中最大的时间复杂度:

W(n) = max{ T(n,I) } , I∈Dn

平均时间复杂性是所有输入实例的处理时间与各自概率的乘积和:

A(n) =∑P(I)T(n,I) I∈Dn

6.简述二分检索(折半查找)算法的基本过程。

6. 设输入是一个按非降次序排列的元素表A[i:j] 和x,选取A[(i+j)/2]与x比较,

如果A[(i+j)/2]=x,则返回(i+j)/2,如果A[(i+j)/2]<x,则A[i:(i+j)/2-1]找x,否则在A[ (i+j)/2+1:j] 找x。上述过程被反复递归调用。

7.背包问题的目标函数和贪心算法最优化量度相同吗?

(完整版)算法设计与分析期末试题_考试版

(完整版)算法设计与分析期末试题_考试版

1、用计算机求解问题的步骤:

1、问题分析

2、数学模型建立

3、算法设计与选择

4、算法指标

5、算法分析

6、算法实现

7、程序调试

8、结果整理文档编制

2、算法定义:算法是指在解决问题时,按照某种机械步骤一定可以得到问题结果的处理过程

3、算法的三要素

1、操作

2、控制结构

3、数据结构

算法具有以下5个属性:

有穷性:一个算法必须总是在执行有穷步之后结束,且每一步都在有穷时间内完成。

确定性:算法中每一条指令必须有确切的含义。不存在二义性。只有一个入口和一个出口

可行性:一个算法是可行的就是算法描述的操作是可以通过已经实现的基本运算执行有限次来实现的。

输入:一个算法有零个或多个输入,这些输入取自于某个特定对象的集合。

输出:一个算法有一个或多个输出,这些输出同输入有着某些特定关系的量。

算法设计的质量指标:

正确性:算法应满足具体问题的需求;

可读性:算法应该好读,以有利于读者对程序的理解;

健壮性:算法应具有容错处理,当输入为非法数据时,算法应对其作出反应,而不是产生莫名其妙的输出结果。

效率与存储量需求:效率指的是算法执行的时间;存储量需求指算法执行过程中所需要的最大存储空间。一般这两者与问题的规模有关。

经常采用的算法主要有迭代法、分而治之法、贪婪法、动态规划法、回溯法、分支限界法迭代法

基本思想:迭代法也称“辗转法”,是一种不断用变量的旧值递推出新值的解决问题的方法。

解题步骤:1、确定迭代模型。根据问题描述,分析得出前一个(或几个)值与其下一个值的迭代关系数学模型。

2、建立迭代关系式。迭代关系式就是一个直接或间接地不断由旧值递推出新值的表达式,存储新值的变量称为迭代变量

2009.1算法设计与分析报告课程期末试卷-A卷(自测)

2009.1算法设计与分析报告课程期末试卷-A卷(自测)

华南农业大学期末考试试卷〔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.3nlog3n

3.T〔n〕表示当输入规模为n时的算法效率,以下算法效率最优的是。

A.T〔n〕= T〔n – 1〕+1,T〔1〕=1 B.T〔n〕= 2n2

C.T〔n〕= T〔n/2〕+1,T〔1〕=1D.T〔n〕= 3nlog2n

4.在棋盘覆盖问题中,对于2k×2k的特殊棋盘〔有一个特殊方块〕,所需的L型骨牌

的个数是。

A.〔4k– 1〕/3 B.2k /3 C.4k D.2k

5.在寻找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〕

最新算法分析与设计期末考试试卷a卷

最新算法分析与设计期末考试试卷a卷

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

------------------------------------------作者xxxx

------------------------------------------日期xxxx

西南交通大学2015-2016学年第(一)学期考试试卷

课程代码 课程名称 算法分析与设计 考试时间 120 分钟

阅卷教师签字: 一、 填空题(每空1分,共15分) 1. 回溯法的求解目标是找出解空间树中满足约束条件的所有解,而 (1) 法的求解目标则是找出满足约束条件的一个解,或是在满足约束条件的解中找出在某种意义下的最优解. 2. 分治算法的基本步骤包括:分解、解决和 (2) 。 3. 选择排序、插入排序和归并排序算法中, (3) 算法是分治算法。 4. 计算一个算法时间复杂度通常可以计算的 (4) 、基本操作的频度或计算步。 5. 贪心算法的基本要素是 (5) 性质和 (6) 性质 。 6. 以广度优先或以最小耗费方式搜索问题解的算法称为 (7) 。 7. 快速排序算法的性能取决于 (8) 。 班 级 学 号 姓 名 密封装订线 密封装订线 密封装订线

8.常见的减治策略分为三类:

(9), (10) ,减可变规模。

9.堆的构建过程对于堆排序而言是一种(11)

策略,属于变治思想中的实例化简类型。

10.分支限界法主要有(12)分支限界法和

(13)分支限界法。

11.快速排序算法是基于 (14)的一种排

序算法.

12.动态规划算法的基本思想是将待求解问题分解成

若干子问题,先求解(15),然后从这些子问题的解得到原问题

算法设计与分析期末考试卷及答案a

算法设计与分析期末考试卷及答案a

算法设计与分析期末考

试卷及答案a

-CAL-FENGHAI.-(YICAI)-Company One1

生 信 息 栏 __

_

_

_

_

_

_

_

_

_

_系______ 专业 _

_

_

_

_

_

_

_

_

_

_

_

_

_装

线

生 信

_

_

_

_

_

_

_

_

_

_

_

_系______ 专业 _

_

_

_

_

_

_

_

_

_

_

_

_装

线

pro2(n) ex1(n/2) end if return end ex1 3.用Floyd 算法求下图每一对顶点之间的最短路径长度,计算矩阵D 0,D 1,D 2和D 3,其中D k [i, j]表示从顶点i 到顶点j 的不经过编号大于k 的顶点的最短路径长度。 三.算法填空题(共34分) 1.(10分)设n 个不同的整数按升序存于数组A[1..n]中,求使得A[i]=i 的下标i 。下面是求解该问题的分治算法。 算法 SEARCH 输入:正整数n ,存储n 个按升序排列的不同整数的数组A[1..n]。 输出:A[1..n]中使得A[i]=i 的一个下标i ,若不存在,则输出 no solution 。 i=find ( (1) ) if i>0 then output i else output “no solution ” end SEARCH 过程 find (low, high) // 求A[low..high] 中使得A[i]=i 的一个下标并返回,若不存在,

生 信

______学

_

_

_

_

_

_系______ 专业 _

__

_

_

_

_

_

__

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

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

装订线

华南农业大学期末考试试卷(A卷) 2012学年第1学期 考试科目:算法设计与分析

考试类型:(闭卷)考试 考试时间:120 分钟

学号姓名年级专业

题号一(20) 二(25) 三(16) 四(24) 五(15) 总分

得分

评阅人

说明:

(1)请勿漏填学号姓名等信息。本试卷仅一份,请将答案直接填于试卷上,莫将试卷当草稿,想好了再写,若空白的位置不够,标注清楚后可以写反面;

(2)答题时,对算法的描述可以采用文字、公式、图、伪代码、实例说明等混合形式。请注意表达应条理清晰,思想简洁,勿长篇累述不得要领。

得分

一、填空题(1~3题每空1分,第4题每空2分,共20分,结果直接填于划线处)

1、化简下面f(n)函数的渐进上界表达式。(5分)

n

n

n

f3

2/

)

(2

1

,则____)

(_________

))

(

(

1

O

n

f

O

3

2

2

)

(

n

n

f,则____)

(_________

))

(

(

2

O

n

f

O

3

3

log

)

(n

n

f ,则____)

(_________

))

(

(

3

O

n

f

O

2

log

4

2

)

(n

n

f ,则____)

(_________

))

(

(

4

O

n

f

O

n

n

f3

log

)

(

5

,则____)

(_________

))

(

(

5

O

n

f

O

参考解答:)

3(

))

(

(

1

n

O

n

f

O ;)

2(

))

(

(

2

n

O

n

f

O ;)

(log

))

(

(

3

n

O

n

f

O ;

)

(

))

(

(2

4

n

O

n

f

O ;)

(

))

(

(

5

n

O

n

f

O 。

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

算法1:O( );

算法2:O( );

1

2

算法3:O( )

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

(完整版)算法设计与分析期末考试卷及答案a

(完整版)算法设计与分析期末考试卷及答案a

e i r

b e

i n

一.填空题: 1. 元运算2. O 3.

∑∈n

D I I t I p )

()(4. 将规模为n 的问题分解为子问题以及组合相应的子问题的解所需的时间5. 分解,递归,组合

6. 在问题的状态空间树上作带剪枝的DFS 搜索(或:DFS+剪枝)

7. 前者分解出的子问题有重叠的,而后者分解出的子问题是相互独立(不重叠)的

8. 局部

9. 高

10. 归并排序算法11. 不同

12. v=random (low, high); 交换A[low]和A[v]的值 随机选主元13. 比较

n

二.计算题和简答题:1. 阶的关系:

(1) f(n)= O(g(n))

(2) f(n)=(g(n))Ω (3) f(n)=(g(n))Ω (4) f(n)= O(g(n))

3. (1) i>=1 (2)k[i]+1 (3) 1

(4) i+1 (5) k[i]=0 (6) tag[x, y]=0

(7) x=x-dx[k[i]]; y=y-dy[k[i]]

四.算法设计题:

1. 贪心选择策略:从起点的加油站起每次加满油后不加油行驶尽可能远,直至油箱中的

油耗尽前所能到达的最远的油站为止,在该油站再加满油。

算法MINSTOPS

输入:A、B两地间的距离s,A、B两地间的加油站数n,车加满油后可行驶的公里数m,存储各加油站离起点A的距离的数组d[1..n]。

输出:从A地到B地的最少加油次数k以及最优解x[1..k](x[i]表示第i次加油的加油站序号),若问题无解,则输出no solution。

d[n+1]=s; //设置虚拟加油站第n+1站。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

华南农业大学期末考试试卷(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.20log

2n C.2n2 D.3nlog

3

n

3.T(n)表示当输入规模为n时的算法效率,以下算法效率最优的是。A.T(n)= T(n – 1)+1,T(1)=1 B.T(n)= 2n2

C.T(n)= T(n/2)+1,T(1)=1 D.T(n)= 3nlog

2

n

4.在棋盘覆盖问题中,对于2k×2k的特殊棋盘(有一个特殊方块),所需的L型骨

牌的个数是。

A.(4k– 1)/3 B.2k /3 C.4k D.2k

5.在寻找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 .问题规模相同,问题性质相同

B .问题规模相同,问题性质不同

C .问题规模不同,问题性质相同

D .问题规模不同,问题性质不同

9.对布线问题,以下 是不正确描述。

A .布线问题的解空间是一个图

B .可以对方格阵列四周设置围墙,即增设标记的附加方格的预处理,使得算法简化对边界的判定

C .采用广度优先的标号法找到从起点到终点的布线方案(这个方案如果存在的话)不一定是最短的

D .采用先入先出的队列作为活结点表,以终点b 为扩展结点或活结点队列为空作为算法结束条件

10.对于含有

n 个元素的子集树问题,最坏情况下其解空间的叶结点数目

为 。

A .n!

B .2n

C .2n+1

-1 D .∑=n

i i n 1

!/!

答案:DACAD CACCB

二、填空题(10分,每题2分)

1、一个算法复杂性的高低体现在计算机运行该算法所需的时间和存储器资源上,因此算法的复杂性有 时间 复杂性和空间复杂性之分。

2、出自于“平衡子问题”的思想,通常分治法在分割原问题,形成若干子问题时,这些子问题的规模都大致 相同 。

3、使用二分搜索算法在n 个有序元素表中搜索一个特定元素,在最佳情况下,搜索的时间复杂性为O ( 1 ),在最坏情况下,搜索的时间复杂性为O ( logn )。

4、已知一个分治算法耗费的计算时间T(n),T(n)满足如下递归方程: 解得此递归方可得T(n)= O ( nlogn )。

5、动态规划算法有一个变形方法 备忘录方法 。这种方法不同于动态规划算法“自底向上”的填充方向,而是“自顶向下”的递归方向,为每个解过的子问题建立了备忘录以备需要时查看,同样也可避免相同子问题的重复求解。 参考解答:1、时间 2、相同 3、1 logn 4、log n n 5、备忘录方法

三、简答题(40分,每题8分)

1、(8分)写出下列复杂性函数的偏序关系(即按照渐进阶从低到高排序):

参考解答:3210log log 23!n n n n n n n n n p p p p p p p

2、(8分)现在有8位运动员要进行网球循环赛,要设计一个满足以下要求的比赛日程表:

(1)每个选手必须与其他选手各赛一次; (2)每个选手一天只能赛一次; (3)循环赛一共进行

n – 1天。

请利用分治法的思想,给这8位运动员设计一个合理的比赛日程。 参考解答:

3、(8分)某体育馆有一羽毛球场出租,现在总共有10位客户申请租用此羽毛球场,每个客户所租用的时间单元如下表所示,s(i)表示开始租用时刻,f(i)表示结束租用时刻,10个客户的申请如下表所示:

同一时刻,该羽毛球场只能租借给一位客户,请设计一个租用安排方案,在这10位客户里面,使得体育馆能尽可能满足多位客户的需求,并算出针对上表的10个客户申请,最多可以安排几位客户申请。

参考解答:将这10位客户的申请按照结束时间f(i)递增排序,如下表:

1)选择申请1(1,4)

2)依次检查后续客户申请,只要与已选择的申请相容不冲突,则选择该申请。直

相关文档
最新文档