08数据结构试卷A (1)

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

武汉理工大学教务处
试题标准答案及评分标准用纸
课程名称数据结构(A 卷)
一、判断题(每小题2分,共20分)
1、对
2、对
3、错
4、对
5、对
6、对
7、错
8、对
9、错10、对
装二、选择题(每小题3分,共15分)
1、B
2、C
3、B
4、A
5、D
三、填空题(每小题3分,共21分)
1、n-1
2、p->prior->next=p->next; p->next->prior=p->prior;
3、33
4、中序
5、n(n-1)
6、(n+1)/2 或3(n+1)/4
7、CEF
四、应用题((每小题9分,共36分)
1、(1)将数组中的负数调到非负数之前……………3分
(2)只需对数组扫描一遍即可,故时间复杂度为O(n) ……………6分
(3)最坏情况下:负数都位于非负数之后,需将负数与非负数对换,故记录的最大移动次
数为n /2 ……………9分
订2、中序遍历:LDR 后序遍历:LRD ……………2分由中序遍历和后序遍历一致,则应该是LD,任一个结点没有右孩子……………5分
……


……………9分
线3、32%7=4,13%7=6,49%7=0,55%7=6,22%7=1,38%7=3,21%7=0 ……………2分
哈希表为:49552238322113
0123456
……………5分
查找32,13,49,38需比较一次,查找22需比较两次,查找55需比较3次,查找21需比较6次……………8分
故平均查找长度为:(1*4+2*1+3*1+6*1)/7=15/7 ……………9分
4、排序算法主要有简单排序、快速排序、堆排序、归并排序、基数排序。

…………1分
(1)从平均性能而言,快速排序最佳,其所需时间最省,但快速排序在最坏情况下的时
间性能不如堆排序和归并排序,在n较大时,归并排序所需时间较堆排序省,但它
所需的辅助存储量最多。

……………3分
(2)“简单排序”包括除希尔排序之外的所有插入排序,起泡排序和简单排序,其中直
接插入排序最简单,当序列中的记录“基本有序”或n较小时,它是最佳排序方法,
因此常将它和其他的排序方法,诸如快速排序、归并排序等结合在一起使
用。

……………5分
(3)基数排序的时间复杂度为O(d*n),适用于n很大而关键字较小的序列。

若关键字
也很大,而序列中大多数记录的“最高位关键字”均不同,则也可按“最高位关键
字”不同将序列分成若干“小”的子序列,而后进行直接插入排序。

……7分
(4)从方法的稳定性来比较,基数排序是稳定的内排方法,所有时间复杂度为O(n2)
的简单排序法也是稳定的,然而,快速排序、堆排序和希尔排序等时间性能较好的
排序方法都是不稳定的。

……………9分
五、算法设计题(8分)
void DFS(Graph G, int v) {// 从顶点v出发,深度优先遍历G
visited[v] = TRUE; VisitFunc(v); ……………1分
for(w=FirstAdjVex(G, v);w!=0; w=NextAdjVex(G,v,w)) ……………3分if (!visited[w]) DFS(G, w); // 对v的尚未访问的邻接顶点w递归调用DFS } // DFS ……………6分用邻接矩阵来表示图,遍历图中每一个顶点都要从头扫描该顶点所在行,因此遍历全部顶点所需的时间为O(n2)。

……………8分。

相关文档
最新文档