您的位置:首页 > 其它

2020-07-07

2020-07-07 22:53 32 查看

树:树是一种非线性数据结构,它由n(n>=1)个有限结点组成的一个具有层次关系的集合。
树的特点:每个结点具有0个或者多个子结点;
没有父节点的结点时根节点;
每一个非根结点有且只有一个父节点;
除了根结点,每个子结点都可以分为多个不相交的子树。
二叉树:每个结点最多有两个子树,有5种状态,空二叉树、根和空的左右子树、根和左子树、根和右子树、根和左右子树。
二叉树和树的特点仅仅在结点拥有的子结点的个数不同。
二叉树是树的一种。
一个结点有子树,那么该结点就是子树根的双亲,子树的根称为该结点的孩子,有相同双亲的结点互为兄弟,一个结点的所有子树上的任何结点都是该结点的后裔。从根结点到某个结点的路径上的所有结点都是该结点的祖先。
结点的度:结点拥有的子树的数目。
叶子结点:结点的度为0的结点。
分支结点:结点的度不为0的结点。
层次:根结点的层次为1,其余结点的层次等于该结点的双亲结点层次加1.
树的度:树中结点的最大的度。
树的高度:树中结点的最大层次。
森林:由0个或者多个不相交的树组成,对森林加上一个根,森林就成为了树,删除根,树就成了森林。
深度为k的二叉树,最多有多少个结点:最多是条件,可以看成满二叉树,结果是一个等比数列求和,20+……+2(k-1),化简得2^k-1.(k>=1)
在二叉树的第i层上最多有几个结点,还是想一下满二叉树每一层的结点数,是按等比数列排列,2i,所以第i层的结点数是2(i-1).(i>=1)
一个2叉树里有n个度为2的结点,则叶子结点n0=n2+1。
n=总分支数B+1。
分支是由结点度为2和结点度为1的结点射出,所以总分支数=n1+n2*2.
一棵深度为k且有2^k-1个结点的二叉树,则为满二叉树,意思就是满二叉树里的每一层的结点数都是最大结点数。对满二叉树进行编号,从上而下,从左到右,如果有一个深度为k的二叉树的编号一一对应,则称其为完全二叉树。对于完全二叉树来说,叶子结点只有可能在层级最大的两层上出现,如果右分支的最大层次是L,那么左分支的最大层级是L或者L=1;

树的遍历:
前序:先访问根结点,之后是左孩子,最后是右孩子;
后序:先访问左孩子,之后是右孩子,最后是根结点;
中序:先访问左孩子,之后是根结点,最后是右孩子;

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: