c>},画出这棵树,并回答下列问题:
(1)哪个是根结点?
(2)哪个是叶子结点?
(3)哪个是结点g的双亲?
(4)哪些是结点g的祖先?
(5)哪些是结点g的孩子?
(6)哪些是结点e的子孙?
(7)哪些是结点e的兄弟?
哪些是结点f的兄弟?
(8)树的深度是多少?
(9)树的度数是多少?
5.2一棵二叉树的结点数据采用顺序存储结构,存储于数组t中,如图5-2所示,画出该二叉树的链接表示形式?
图5-2一棵二叉树的顺序存储数组t
5.3如图5-3所示的二叉树,回答下列问题:
(1)写出先序、中序、后序遍历的序列;
(2)画出该二叉树的中序线索二叉树;
(3)画出该二叉树对应的森林。
图5-3一棵二叉树
5.4已知一棵二叉树的中序序列为cbedahgijf,后序序列为cedbhjigfa,画出该二叉树的先序线索二叉树。
5.5有一份电文中共使用5个字符:
a、b、c、d、e,它们的出现频率依次为4、7、5、2、9,试画出对应的哈夫曼树,(请按左子树根结点的权小于等于右子树根结点的权的次序构造),并求出每个字符的哈夫曼编码。
5.6设给定权集w={2,3,4,7,8,9},试构造关于w的一棵哈夫曼树,并求其加权路径长度WPL。
5.11试编写一个将二叉树中每个结点的左右孩子交换的算法。
作业六
6.1图6.24所示为一有向图:
(1)求每个顶点的入度和出度;
(2)画出它的邻接矩阵;
(3)画出它的邻接链表与逆邻接链表;
(4)画出它的强连通分量。
6.2已知如图6.25所示的无向带权图:
写出它的邻接矩阵,并在此存储表示基础上用普里姆算法求其MST树,简画出其生成过程示意图。
6.3列出如图6.26所示AOV网的全部可能的拓扑序列。
6.4已知如图6.27所示的AOE网。
求
(1)每项活动的最早开始时间Ve和最迟开始时间Vl;
(2)完成此工程最少需要多少单位时间?
(3)关键活动与关键路径。
作业七
7.1分别画出在线性表(5,10,15,20,30,35,40)中进行折半查找,查找关键字10和39的过程,并分别求出ASL成功和ASL不成功的值。
7.2设一组记录的关键字按序列{4,5,7,2,1,3,6}次序进行插入生成一棵AVL树。
试描述其生成及调整成平衡二叉树的过程,并指明该步骤是属于什么调整平衡方式的基本类型。
7.3使用哈希函数:
H(key)=3key%11,并采用开放地址法处理冲突,求其下一地址的函数为:
d1=H(key)
di=(di-1+(7(key))%11(i=2,3,…)
试在0~10的散列地址空间中对关键字序列{22,41,53,46,30,13,01}构造哈希表,并求出等概率情况下查找成功的平均查找长度。
7.4已知序列{17,18,60,40,7,32,73,65,85},请给出采用冒泡排序法对该序列作升序排序时的每一趟的结果。
7.5已知序列{503,87,512,61,908,896,257,653,465},请给出采用快速排序法对该序列作升序排序时的每一趟的结果。
7.6已知序列{503,87,512,61,908,170,897,275,653,462},请给出采用堆排序法对该序列作升序排序时的每一趟的结果。
7.7已知序列{10,15,4,3,6,12,1,9,18,8},请给出采用希尔排序法对该序列作升序排序时的每一趟结果。
7.8试说明归并排序的基本过程,并给出对关键字序列{47,33,61,82,72,11,25,57}进行两路归并排序的示意。