一、单项选择题在每小题列出的四个备选项中只有一个是符合题目要求的。
5. 若进栈序列为1,2,3,4,5,6,且进栈和出栈可以穿插进行,则不可能出现的出栈序列是
- A.2,4,3,1,5,6
- B.3,2,4,1,6,5
- C.4,3,2,1,5,6
- D.2,3,5,1,6,4
A B C D
12. 对关键字序列(56,23,78,92,88,67,19,34)进行增量为3的一趟希尔排序的结果为
- A.(19,23,56,34,78,67,88,92)
- B.(23,56,78,66,88,92,19,34)
- C.(19,23,34,56,67,78,88,92)
- D.(19,23,67,56,34,78,92,88)
A B C D
二、填空题1. 数据的逻辑结构在计算机存储器内的表示,称为数据的______。
2. 删除双向循环链表中*p的前驱结点(存在)应执行的语句是______。
p—>prior=p—>prior—>prior;
p—>prior—>next=p;
(或p—>prior—>prior—>next=p;
p—>prior=p—>prior—>prior;
4. 已知substr(s,i,len)函数的功能是返回串s中第i个字符开始长度为len的子串,strlen(s)函数的功能是返回串s的长度。若s="ABCDEFGHUK",t="ABCD",执行运算substr(s,strlen(t),strlen(t))后的返回值为______。
5. 去除广义表LS=(a
1,a
2,a
3,……,a
n)中第1个元素,由其余元素构成的广义表称为LS的______。
6. 已知完全二叉树T的第5层只有7个结点,则该树共有______个叶子结点。
7. 在有向图中,以顶点V为终点的边的数目称为V的______。
8. 当关键字的取值范围是实数集合时,无法进行箱排序和______排序。
9. 产生冲突现象的两个关键字称为该散列函数的______。
10. 假设散列文件中一个桶能存放m个记录,则桶“溢出”的含义是,当需要插入新的记录时,该桶中______。
已有m个同义词的记录(或:已有m个记录;或:已满)
三、解答题假设以数组seqn[m]存放循环队列的元素,设变量rear和qHelen分别指示循环队列中队尾元素的位置和元素的个数。
(1)写出队满的条件表达式;
(2)写出队空的条件表达式;
(3)设m=40,rear=13,quelen=19,求队头元素的位置;
(4)写出一般情况下队头元素位置的表达式。5. 已知一棵二叉树的中序序列为ABCDEFG,层序序列为BAFEGCD,请画出该二叉树。
6. 画出下图所示有向图的所有强连通分量。

该图的强连通分量分别为:

对7个关键字进行快速排序,在最好的情况下仅需进行10次关键字的比较。
(1)假设关键字集合为{1,2,3,4,5,6,7},试举出能达到上述结果的初始关键字序列;
(2)对所举序列进行快速排序,写出排序过程。8.
初始关键字 4 7 1 3 6 5 2
一次划分后得 (2 3 1)4(6 5 7)
继续划分后得 (1)2(3) (5)6(7)