算法设计与分析期末考试参.pdfVIP

  • 0
  • 0
  • 约1.63万字
  • 约 9页
  • 2026-02-04 发布于四川
  • 举报

计算机学院2005/2006学年(下)学期期末考试试卷

《》试卷(A卷)

专业年级班级学号

题号一、简答题二、解答题三、分析题四、设计题总分

得分

一、简答题(每题5分,共25分)

1.使用记号表示下列函数:

32100i

(1)f(n)=n+nlogn(2)f(n)∑ia(其中a1)

121≤≤

in

3n

答:(1)f(n)=(n)。(2分)(2)g(n)(na)。(3分)

2.以比较为基础的排序算法的时间下界是(nlogn)。基数排序的时间复杂度?这个下

界适用基数排序吗?为什么?

答:基数排序的时间复杂度为(kn),其中,k是元素的位数,n是元素的个数。(3分)

此下界不适用于基数排序,因为基数排序不属于基于元素的比较来排序的算法类。(2分)

3.图的深度优先搜索和宽度优先搜索方法的主要区别?

答:主要区别如下:图的深度优先搜索是每当检测一个结点u时,到一个新结点v,则暂

时终止对u的检测,转而对v进行检测(3分);而图的宽度优先搜索则是每当检测一个结点

u时,就依次完没有被的u的邻接点,即一次对u检测完毕。(2分)。

4.简述使用分枝限界法求解问题的基本思路。与回溯法相比,它有何优势,和有何不足?

答:分枝限界法的基本思想是:宽度优先搜索(优先队列搜索)+剪枝。即,通过对搜索树进

行宽度优先搜索来寻找问题的解答,且在搜索中每搜索到一个结点处,都要考虑是否能使用

剪枝操作来剪枝,从而提高搜索效率。(3分)与回溯法相比,这种搜索方法具有更大的灵活

性(搜索跳跃性更大),但是往往需要比回溯法多得多的空间。(2分)

5.考虑产生1,2,⋯,n.的一个随机排列。请简要描述一个时间复杂度为O(n)的随机算法的思路。

答:一种随机算法的基本思路是:先初始化A[i]i,1≤i≤n;然后随机地在A中选两个元素

出来交换,此操作执行n次。显然,这种算法的时间复杂度为(n)。(5分)

二、解答题(每题15分,共45分)

1/9

16.在图1实例上应用Dijkstra算法求结点a到其它所有结点的最短路长,。

(1)请用文字描述其描述算法的基本思路;bd

2

2

文档评论(0)

1亿VIP精品文档

相关文档