数据结构学习-二叉树

1 二叉树的分类

斜树:

满二叉树:

完全二叉树:

2 二叉树的性质

1、对于任何一棵非空的二叉树,如果叶节点个数为n0,度数为2的节点个数为n2,则有: n0 = n2 + 1

在一棵二叉树中,除了叶子结点(度为0)之外,就剩下度为2(n2)和1(n1)的结点了。则树的结点总数为T = n0+n1+n2;在二叉树中结点总数为T,而连线数为T-1.所以有:n0+n1+n2-1 = 2*n2 +n1;最后得到n0 = n2+1;

QQ截图20150818171417

上图中结点总数是10,n2为4,n1为1,n0为5。

2、如果有一颗有n个节点(下图例子中n为10)的完全二叉树的节点按层次序编号,对任一层的节点i(1<=i<=n)有

    1.如果i=1,则节点是二叉树的根,无双亲,如果i>1,则其双亲节点为[i/2],向下取整

    2.如果2i>n那么节点i没有左孩子,否则其左孩子为2i

    3.如果2i+1>n那么节点没有右孩子,否则右孩子为2i+1

QQ截图20150818173731

3 二叉树的遍历

3.1 前序遍历

根节点 -> 左子树 -> 右子树

3.2 中序遍历

左子树 -> 根节点 -> 右子树

3.3 后序遍历

左子树 -> 右子树 -> 根节点

本文的参考文章为:

http://www.cnblogs.com/polly333/p/4740355.html

猜你喜欢

转载自blog.csdn.net/m0_37622530/article/details/81210394