数据结构问题2?

第三次作业
假设在树中,结点x是结点y的双亲时,用(x,y)来表示树边。已知一棵树边的集合为:{(i,m),(i,n),(e,i),(b,e),(b,d),(a,b),(g,j),(g,k),(c,g),(c,f),(h,l),(c,h),(a,c)}
用树形表示法画出此树,并回答下列问题:
(1)哪个是根结点:(2)哪些是叶结点?(3)哪个是g的双亲?
(4)哪些是g的祖先?(5)哪些是g的孩子?(6)哪些是e的子孙?
(7)哪些是e的兄弟?哪些是f的兄弟?(8)结点b和n的层次各是多少?
(9)树的深度是多少?(10)以结点c为根的子树的深度是多少?
(11)树的度数是多少?

一个深度为h的满k叉树有如下性质:第h层上的结点都是叶子结点,其余各层上每个结点都有k棵非空子树。如果按层次顺序(同层自左至右)从1开始对全部结点编号,问:
(1)各层的结点数目是多少?
(2)编号为i结点的双亲结点(若存在)的编号是多少?
(3)编号为i的结点的第j个孩子结点(若存在)的编号是多少?
(4)编号为i的结点有右兄弟的条件是什么?其右兄弟的编号是多少?

假设二叉树包含的结点数据为1,3,7,2,12。
(1)画出两棵高度最大的二叉树;
(2)画出两棵完全二叉树,要求每个双亲结点的值大于其他孩子结点的值。

若二叉树中各结点的值均不相同,则由二叉树的前序序列和中序序列,或由其后序序列和中序序列均能惟一地确定一棵二叉树,但由前序序列和后序序列却不一定能惟一地确定一棵二叉树。
(1)已知一棵二叉树的前序序列和中序序列分别为ABDGHCEFI和GDHBAECIF,请画出此二叉树。
(2)已知一棵二叉树的中序序列和后序序列分别为BDCEAFHG和DECBHGFA,请画出此二叉树。
(3)已知两棵二叉树的前序序列和后序序列均为AB和BA,请画出这两棵不同的二叉树

假设图采用邻接表存储,编写一个函数利用深度优先搜索方法求出无向图中通过给定点v的简单回路。

设计一个函数修改冒泡排序过程以实现双向冒泡排序

已知序列{10,18,4,3,6,12,1,9,15,8},请给出采用归并排序法对该序列作升序排序时的每一趟的结果。
已知序列{42,13,24,91,23,16,05,88},试给出对其建大根堆过程中完全二叉树及其存储结果的变化情况。

已知序列{17,18,60,40,7,32,73,65,85},请给出采用冒泡排序法对该序列作升序排序时的每一趟的结果。

编写一个函数,利用二分查找算法在一个有序表中插入一个元素x,并保持表的有序性。

对下面给出的数据序列,构造一棵哈夫曼树,并求出其带权路径长度。
4,5,6,7,10,12,15,18,23

设有一组关键字{19,01,23,14,55,20,84,27,68,11,10,77},采用哈希函数:
H(key)= key % 13
采用开放地址法的线性探测再散列方法解决冲突,试在0~18的散列地址空间中对该关键字序列构造哈希表。

第1个回答  2007-01-07
本来也很想回答你这问题,但你的问题太长太大了,哪有时间回答?算了,这五分我不要了.
相似回答