青岛理工大学算法与数据结构期末试题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.数据的最小单位是()。
A.数据项 B.数据类型 C.数据元素 D.数据变量
2.将含100个结点的完全二叉树从根这一层开始,每层上从左到右依次对结点编号,根结点的编号为1。编号为49的结点X的双亲编号为( )
A.24
B.25
C.23
D.无法确定
3.一个具有n个顶点的无向完全图的边数为( )
A.n(n+1)/2
B.n(n-1)/2
C.n(n-1)
D.n(n+1)
4. 设二维数组A[6][10],每个数组元素占用4个存储单元,若按行优先顺序存放的数组元素,a[0][0]的存储地址为860,则a[3][5]的存储地址是( )
A. 1000
B. 860
C. 1140
D.1200
5.关键路径是事件结点网络中( )
A.最短的回路
B.最长的回路
C.从开始结点到完成结点的最短路径
D.从开始结点到完成结点的最长路径
6.判断一个循环队列Q(最多元素为m)为满队列的条件是( )
A.Q->front==Q->rear
B. Q->front!=Q->rear
C. Q->front== (Q->rear+1)%m
D. Q->front!=(Q->rear+1)%m
7. 栈和队列的共同特点是( )。
A.只允许在端点处插入和删除元素
B.都是先进后出
C.都是先进先出
D.没有共同点
8. 广义表((a),a)的表尾是( )。
A.a
B.((a),a)
C.(a)
D.((a))
9.下面程序段的时间复杂度为( )
for (int i=0;i for (int j=0;j a[i][j]=i*j; A. O(m2) B. O(n2) C. O(m*n) D. O(m+n) 10.设单循环链表中结点的结构为(data,link),且rear是指向非空的带表头结点的单循环链表的尾结点的指针。若想删除链表第一个结点(首元结点),则应执行下列哪一个操作( ) A.s=rear; rear=rear->link; delete s; B.rear=rear- >link; delete rear; C.rear=rear->link->link; delete rear; D s=rear->link- >link; rear->link->link=s->link; delete s; 11.输入序列为ABC,可以变为CBA时,经过的栈操作为( ) A. push,pop,push,pop,push,pop B. push,push,push,pop,pop,pop C. push,push,pop,pop,push,pop D. push,pop,push,push,pop,pop 12.已知一个图,若从顶点a 出发按深度优先进行遍历,则可能得到的 一种顶点序列为( );按广度优先搜索法进行遍历,则可能得到得 一种叙列为( )。 b a e c d f (1) A.abecdf B.acfebd C.aebcfd D.aedfcb (2) A.abcedf B.abcefd C.aebcfd D.acfdeb 二、填空题(每空2 分,共16分) 1.数据的逻辑结构被分为 两大类。 2.数据的存储结构被分为 四种。 3. 设有向图G中有向边的集合E={<1,2>,<2,3>,<1,4>,<4,2>, <4,3>},则该图的一种拓扑序列为____________________。 4. 设指针q指向单链表中结点A,指针p指向单链表中结点A的后继结点 B,指针s指向被插入的结点X,则在结点A和结点B之间插入结点X的操作 序列为 ; s->next=p;。 5.设某棵二叉树中只有度数为0和度数为2的结点且度数为0的结点数为 n,则这棵二叉中共有 个结点。 6.已知一个序列为(80,70,33,65,24,56,48),则利用堆排序的方法 建立的初始小根堆为 。 7.表达式a*(b+c)-d的后缀表达式是 。 8. 已知一个连通图的边集为{(1,2)3,(1,3)6,(1,4)8,(2,3)4,(2,5)10, (3,5)12,(4,5)2},若从顶点1出发,按照普里姆算法生成的最小生成树 的过程中依次得到的各条边为 。 三、判断题(每题1分,共6分) 1.连通分量是无向图中的极小连通子图。( ) 2.任何一个关键活动提前完成,那么整个工程将会提前完成。( ) 3.线性表的顺序存储结构比链式存储结构更好。( ) 4.满二叉树一定是完全二叉树,完全二叉树不一定是满二叉树。( ) 5.中序遍历二叉排序树可以得到一个有序的序列。( ) 6.用邻接矩阵存储一个图时,在不考虑压缩存储的情况下,所占用的 存储空间大小只与图中顶点个数有关,而与图的边数无关( )。 四、应用题(每题8分,共40分) 1.已知一棵二叉树的后序遍历的结果是ABFHGEDC,中序遍历的结果是ABCEFGHD,(1)试画出这棵二叉树。(2)将此二叉树转换成树或森 林。(8分) 2. 某子系统在通信联络中只可能出现8种字符,其出现的概率分别为 0.05,0.29,0.07,0.08,0.14,0.23,0.03,0.11试设计赫夫曼编 码。(8分) 3.已知一组记录的排序码为(46,79,56,38,40,80, 95,24),写 出对其进行快速排序的每一次划分结果。(8分) 4. 设一组初始记录关键字集合为(25,10,8,27,32,68),散列表的 长度为8,散列函数H(k)=k mod 7,要求分别用线性探测和拉链法 (链地址法)作为解决冲突的方法设计哈希表。(8分) 5.已知图的存储的邻接矩阵如下,画出相应的图形并利用Dijkstra算法