数据结构-二叉树

作者 : admin 本文共695个字,预计阅读时间需要2分钟 发布时间: 2024-06-10 共2人阅读

树:

(1)N(N>=0)个结点的有限集

(2)对于不只有根结点的树,除根结点外,其余结点被分为M(M>0)个互不相交的集合T1,T2,…..Tm,其中每个集合T(i)(1<=i<=m)又是与树类似的子树,每个树的根节点只有一个前驱,可以有多0个或多个后继

(3)分三类:空树、只有根结点的树、一般树

数据结构-二叉树插图

为什么要研究树这个非线性数据结构

查询高效

如dom树、文件资源管理器

数据结构-二叉树插图(1)

空树:没有结点的树,以下讨论的树皆为非空树

一、基本知识

树:

1、结点的度:结点向下连接得到的结点个数

2、树的度:树中所有结点的度中的最大值

3、根结点:每棵树有且仅有一个根结点

4、叶子结点:度为0的结点

二叉树:

1、二叉树:每个结点的度最多为2的树

2、父亲结点:除根结点外,每课二叉树有且仅有一个父亲结点

3、左孩子结点:结点左边连接的结点

4、右孩子结点:结点右边连接的结点

二、满二叉树

1、满二叉树:

(1)除叶子结点外其它结点的度都为2的树

(2)叶子结点都在最后一层

2、层数为n

(1)第k层结点的个数为2^(k-1)

(2)叶子结点的个数为2^(n-1)

(3)非叶子结点的个数为2^(n-1)-1

(4)结点个数为2^n-1

三、二分搜索树/二叉排序树

1、二分搜索树

(1)是二叉树

(2)每个结点的值大于其左子树所有结点的值,小于其右子树所有结点的值

(3)每一棵子树也是二分搜索树

(4)存储的元素必须具有可比性

2、遍历二分搜索树

(1)将重复元素添加到二分搜索树中

遍历结果

数据结构-二叉树插图(2)

(2)根据前序遍历和中序遍历结果画树(画出的树结构不唯一,有时还存在画出的树不正确的情况)

数据结构-二叉树插图(3)

(3)可以通过添加frequence属性记录结点值出现的次数来对重复元素做特殊处理

本站无任何商业行为
个人在线分享 » 数据结构-二叉树
E-->