[解答] (1) 二叉树的前序序列与中序序列相同:空树或缺左子树的单支树; (2) 二叉树的中序序列与后序序列相同:空树或缺右子树的单支树; (3) 二叉树的前序序列与后序序列相同:空树或只有根结点的二叉树。 7.填空题 (1)对于一棵具有 n 个结点的树,该树中所有结点的度数之和为 n-1 。(2)假定一...
6.65④已知一棵二叉树的前序序列和中序序列分别存于两个一维数组中,试编写算法建立该二叉树的二叉链表。 要求实现以下函数: void BuildBiTree(BiTree &bt, int ps, char *pre,int is, char *ino, int n); 二叉链表类型定义: typedef char TElemType; ...
A 1 B 2 C 3 D 4 二、阅读理解题:说明下面递归过程的功能(10分) int unknown (BinTreeNode * t) { //指针t是二叉树的跟指针。 if (t==NULL) return 0; elseif (t->leftChild==NULL&&t->rightChild==NULL)return 1; else return unknown (t->leftChild)+unknown (t->rightChild);...
初始状态:无序区为R[1..n],有序区为空; 第i趟排序(i=1,2,3…n-1)开始时,当前有序区和无序区分别为R[1..i-1]和R(i..n)。该趟排序从当前无序区中-选出关键字最小的记录 R[k],将它与无序区的第1个记录R交换,使R[1..i]和R[i+1..n)分别变为记录个数增...
递归的最底部情形,是数列的大小是零或一,也就是永远都已经被排序好了。虽然一直递归下去,但是这个算法总会退出,因为在每次的迭代(iteration)中,它至少会把一个元素摆到它最后的位置去。 算法二:堆排序算法 堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆积是...
7.在平衡二叉树中,任意结点左右子树的高度差(绝对值)不超过1。(√) 8.冒泡排序算法关键字比较的次数与记录的初始排列次序无关。(×) 三、填空题(每空1分,共10分) 1.不仅需要使用内存,而且还要使用外存的排序称为。答:外部排序 2.若不考虑基数排序,则在排序过程中,主要进行的两种基本操作是关键字的和记录...
试推导之。 6.试分别找出满足以下条件的所有二叉树: (1) 二叉树的前序序列与中序序列相同; (2) 二叉树的中序序列与后序序列相同; (3) 二叉树的前序序列与后序序列相同。 7.填空题 (1)对于一棵具有 n 个结点的树,该树中所有结点的度数之和为 。(2)假定一棵三叉树的结点个数为 50,则它的最小...
递归的最底部情形,是数列的大小是零或一,也就是永远都已经被排序好了。虽然一直递归下去,但是这个算法总会退出,因为在每次的迭代(iteration)中,它至少会把一个元素摆到它最后的位置去。 算法二:堆排序算法 堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算...