8.二叉树的中序遍历是先中序遍历它的左子树,然后访问(),再中序遍历它的右子树。
9.对一组数据(54,38,96,23,15,72,60,45,83)进行直接插入排序时,第一趟
排序的结果是()。
10.图的遍历方法有()和广度优先遍历。
三.解答下列问题(共 50 分)
1.设元素 1,2,3,4,5 依次进栈,要在输出端得到序列 3,4,2,5,1,写出进栈和
出栈的过程。(8 分)
2.设有如下二叉树∶(12 分)
解答下列问题∶
(1)写出它的前序、中序和后序遍历序列。
(2)该二叉树的高度、单分支结点数、叶子结点数各是多少?
3.已知一个无向图的邻接表如下图所示∶(7 分)
解答下列问题∶
(1)画出这个无向图。
(2)写出从顶点 V。出发的深度优先遍历序列。
(3)写出从顶点 V。出发的广度优先遍历序列。
4.如下图所示的无向带权图∶(7 分)
解答下列问题∶
(1)写出它的邻接矩阵。
(2)根据普利姆(Prim)算法从 f 出发求它的最小生成树,画出最小生成树的生成过
程。
5.设有一个输入数据的序列是(46,25,78,62,12,37,70,29),试画出从空树起,
逐个输入各个数据而生成的每个二叉排序树。(9 分)
6.设有关键字序列{72,73,71,23,94,16,05,68},采用简单选择排序算法进行从
小到大排序,写出每一趟排序的结果。(7 分)
四.编写程序,程序设计语言不限(除 C、C++外请标明是哪种语言)(50 分,每题 10
分)
1.已知数组 A【m】中的元素为整型,设计一个函数将这个数组调整为左右两部分,左
边所有元素为奇数,右边所有元素为偶数。数组和元素个数 n 作为参数传入。
2.已知单链表中各结点的元素值为整型且递增有序,设计一个函数删除链表中所有大于
mink 且小于 maxk 的元素,并释放被删结点的存储空间。链表头指针和 mink、maxk 值作为
参数传入。
3.设计一个函数统计出单链表 HL 中结点的值等于给定值 x 的结点数。链表头指针和 x
作为参数传入。
4.写出二叉树前序遍历的递归算法。
5.设计一个函数,求用邻接矩阵表示的有向图中序号为 mum 的顶点的度(入度和出度之
和),其中邻接矩阵、有向图的顶点数、num 的值作为参数传入。