树学习(1)

来源:互联网 发布:知乎 车枪球 编辑:程序博客网 时间:2024/06/10 06:26

1、       二叉树是非线性数据结构,所以顺序存储结构与链式存储结构都能存储。

(分析:普通二叉树可以用链表存储,对于完全二叉树由于树本身的特性,一个节点标号为i,则其左孩子为2i+1,右孩子为2i+2,父节点为(i-1*2

      由此公式可以通过数组来存储。数组为顺序存储结构,链表为链式存储结构。

 

2、       完全二叉树中,非叶节点最多没有右孩子。没有左孩子的话,就表示没有子节点。

 

完全二叉树的特点:

1)       只允许最后一层有空缺结点且空缺在右边,即叶子结点只能在层次最大的两层上出现;

2)       对任一结点,如果其右子树的深度为j,则其左子树的深度必为j或者j+1。即度为1的点只有1个或者0个。

 

如果根结点没有左子树,对于完全二叉树,也不会有右子树,就是一个只有一个顶点的二叉树。

 

3、       一颗左子树为空的二叉树在前序线索化后,其中空的链域个数是:2.

分析:线索化后,空域就是没有前驱,没有后继。不仅左子树为空的二叉树,其他二叉树也是如此。

 

4、       N代表二叉树总结点数,n0,n1,n2,分别代表度为0,1,2,的结点数。

那么可以得到:N=n0+n1+n2;

N=2*n2+n1+1(1代表根结点)

联立上面两个等式,可以得到二叉树中叶子结点(度为0)和度为2的结点关系:n2=n0-1

 

5、       在平衡二叉树中插入一个结点后造成了不平衡,设最低的不平衡结点为A,并已知A的左孩子的平衡因子为0,右孩子的平衡因子为1则应作RL型调整以使其平衡。

 

分析:插入一个新结点后,A的左子树平衡因子为0,右子树平衡因子为1,因此导致不平衡不可能在A的左子树上插入。若是在A的右子树上插入结点,因为插入结点后平衡因子变为1,所以必定是在A的右子树的根结点的左子树插入。

------------------------------------------------------------------------------------

1)首先找出插入新结点后失去平衡的最小子树根结点的指针。

2)然后再调整这个子树中有关结点之间的链接关系,使之成为新的平衡子树。

3)当失去平衡的最小子树被调整为平衡子树后,原有其他所有不平衡子树无需调整,整个二叉排序树又变成了一颗平衡二叉树。

失去平衡的最小子树是指以离插入结点最近,且平衡因子绝对值大于1的结点作为根的子树。平衡因子=左子树的高度-右子树的高度

 

平衡二叉树AVL可以是空树。

假如不是空树,任何一个结点的左子树和右子树都是平衡二叉树,并且高度之差的绝对值不超过1,平衡因子=左子树的高度-右子树的高度。

AVL树的插入时的失衡与调整平衡二叉树的失衡调整主要是通过旋转最小失衡子树来实现。

 

调整子树操作分为:LLRRLRRL平衡旋转法。

LL 


RR

LR

RL




6、       一个包含n个结点的四叉树,每个节点都有4个指向孩子结点的指针,这4n个指针中有3n+1个指针。

分析:n个结点为一颗树则有n-1条边,因此有n-1非空指针。所以空指针个数为:4n-(n-1)=3n+1

7、       二叉排序树或者一颗空树性质:

1)       若左子树不空,则左子树上所有结点的值均小于它的根结点的值;

2)       若右子树不空,则右子树上所有结点的值均大小等于根结点的值;

3)       左右子树也分别为二叉排序树;

4)       没有键值相等的结点;

 

8、 1)二叉树第i层最多有2^i-1)个结点(i>=1);

2)深度为k的二叉树至多有2^k-1个结点(k>=1);

3)对于任何一个二叉树,如果其终端结点数为n0,度为2的结点数位n2,则n0=n2+1;

4)具有n个结点的完全二叉树的深度为[log n]+1

 

深度是从上往下数(第一层为1);高度是从下往上数(最后一层为1

 

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 两周岁还不说话怎么办 2岁了不会说话怎么办 一岁宝宝蛀牙了怎么办 分手了想联系他怎么办 和婆家人闹翻了怎么办 2岁宝宝不好断奶怎么办 2岁宝宝断奶哭闹怎么办 脑子感觉变笨了怎么办 5岁数学不开窍怎么办 小孩拼音太差了怎么办 我生了爸爸孩子怎么办 三岁宝宝特别犟怎么办 孩子说老师打他怎么办 孩子在幼儿园不合群怎么办 孩与厌学不想学怎么办 1岁宝宝太活泼怎么办 3岁宝宝不爱看书怎么办 6岁不好好吃饭怎么办 二岁宝宝不吃饭怎么办 2岁半宝宝不爱吃饭怎么办 宝宝一岁了不爱吃饭怎么办 一岁多的宝宝不爱吃饭怎么办 小孩不吃饭还吐怎么办 一岁婴儿不吃饭怎么办 写字久了肩膀疼怎么办 6岁儿童不写字怎么办 孩子字写得丑怎么办 6岁儿童怕写字怎么办 高三学生上课困怎么办 高三学生压力大怎么办 数学会做的做错怎么办 脑子很笨反应慢怎么办 好学生考砸了怎么办 孩子写作业范愁怎么办 对粗心的孩子该怎么办 做计算题总出错怎么办 孩子字写得不好怎么办 3岁宝宝数学不好怎么办 十个月的宝宝拉肚子怎么办 刚生的宝宝拉肚子怎么办 我给兔子洗澡了怎么办