数据结构

RISE ONLY THIS

.COM

数据结构||专升本

模拟题库||专升本

  • 扫码获取更多资源

  • ●二叉树

    二叉树是一种重要的树形结构,许多实际问题抽象出来的数据结构往往是二叉树的形 式。二叉树也是一种最简单的树结构,其存储结构更具有规范性和确定性,算法也较为简 单,特别适合计算机处理,而且任何树都可以简单地转换为二叉树。

    双亲表示法

    二叉树的类型定义

    二叉树(Binary Tree)是n(n20)个结点的有限集合。当n = 0时,称为空二叉树;任意 一棵非空树满足以下两个条件:

    (1)有且仅有一个特定的称为根(Root)的结点;

    (2)当n>l时,除根结点之外的其余结点最多分成两个互不相交的有限集合,其中每 个集合又是一棵树,并称为这个根结点的左子树和右子树。

    显然,二叉树的定义是递归的。图6-15所示的是一个二叉树。

    由二叉树的定义,可以得到二叉树的两个特点:其一,每个结点最多有两棵子树,因此 二叉树中不存在度大于2的结点。其二,二叉树是有序的,其次序不能任意颠倒,即使树中 的某个结点只有一棵子树,也要区分它是左子树还是右子树,因此二叉树和树是两种不同的 树结构,如图6-16所示。

    二叉树的基本形态

    二叉树的递归定义表明:二叉树或是为空,或是只有一个根结点,或是一个根结点加上 左子树,或是一个根结点加上右子树,或是一个根结点加上左子树和右子树。由此,二叉树 可以有五种基本形态,如图6-17所示。

    二叉树的遍历

    先序遍历

    先序遍历的定义是如果二叉树为空,则空操作返回;否则: ①问根结点; ②先序遍历根结点的左子树; ③先序遍历根结点的右子树。 例如,对于图6-15所示的二叉树,按先序遍历得到的结点序列为:A B D G C E F。

    中序遍历

    中序遍历的定义是如果二叉树为空,则空操作返回;否则: ①中序遍历根结点的左子树; ②访问根结点; ③中序遍历根结点的右子树。 例如,对于图6-15所示的二叉树,按中序遍历得到的结点序列为:D G B A E C F。

    后序遍历

    后序遍历的定义是如果二叉树为空,则空操作返回;否则: ①后序遍历根结点的左子树; ②后序遍历根结点的右子树; ③访问根结点。

    数据结构

    联系我们:

    地址:云南省昭通市鲁甸县

    邮编:657107

    没有过一次锤死挣扎,到死都不会知道自己有多大潜力。不挥霍最值得回忆的青春,去换来支离破碎的生活。

    在还可以为自己行为买单的年龄,请不要为自己的懒惰找借口,更不要为自己晾成的过失找理由。在别人眼中,你真的很像懦夫

    微信