二叉树

Posted lqkstudy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二叉树相关的知识,希望对你有一定的参考价值。

概述

概念

  二叉树是含有含有n(n≥0)个结点的有限集合。n=0时称为空二叉树。

  若结点a有两个分支结点b和c,则:

    a.结点b和结点c是结点a的子结点

    b.结点a是结点b和结点c的父结点

    c.结点b和结点c互为兄弟结点

    d.没有父结点的结点称为根结点

    e.没有子结点的结点称为叶子结点

  在非空二叉树中:

    a.有且只有一个根结点。

    b.每一个结点可以有0~2个子结点。

  结点的层次从根结点开始计,根结点为第1层,根结点的子结点为第2层...依次往下。最高层次代表了该二叉树的深度

性质

  二叉树的性质有:

    a.在非空二叉树的第i(i≥1)层上最多有2i-1个结点。

    b.深度为k(k≥1)的二叉树最多有2k-1个结点。

    c.叶子结点的个数总比有两个子结点的结点的个数多1。

  满二叉树:一棵深度为k(k≥1)且有2k-1个结点的二叉树。满二叉树的性质有:

    a.第i(i≥1)层上有2i-1个结点。

    b.除了最后一层全为叶子结点外,其余每一层的结点都有两个子结点。

  结点编号:从根结点起,自上而下,自左而右给满二叉树的每一个结点从0开始编号。也就是说:

    a.结点i的左子结点为结点2i+1,右子结点为结点2(i+1)。

    b.i为正奇数,则结点i的父结点为结点(i-1)/2,且结点i为其左子结点;i为正偶数,则结点i的父结点为结点i/2-1,且结点i为其右子结点。

    c.第k(k≥1)层的第一个结点为结点2k-1-1。

    d.二叉树的最后一个结点i与深度d的关系为:2d-1-1≤i<2d-1。

  完全二叉树:每个结点i(0≤i<n,n为结点个数)都存在的二叉树。满二叉树是一种特殊的完全二叉树。完全二叉树的性质有:

    a.只有一个子结点的结点的个数n1=1-n%2。

    b.有两个子结点的结点的个数n2=(n-n1-1)/2=(n-2+n%2)/2。

    c.叶子结点的个数n0=n2+1=(n+n%2)/2。

  二叉树的存储结构也有顺序存储和链式存储两种。

以上是关于二叉树的主要内容,如果未能解决你的问题,请参考以下文章

二叉树及特殊二叉树(满二叉树完全二叉树二叉排序树平衡二叉树)的定义和性质(附详细推理过程)

二叉树二叉树的镜像

普通二叉树二叉查找树平衡二叉树常见操作汇总

SDUT 3341 数据结构实验之二叉树二:遍历二叉树

树二叉树满二叉树完全二叉树

SDUT 3341 数据结构实验之二叉树二:遍历二叉树