首页 > 其他 > 详细

树和二叉树

时间:2021-04-30 15:35:11      阅读:27      评论:0      收藏:0      [点我收藏+]

,什么是树?

树是一种数据结构,它是由n(n>=1)个有限节点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。它具有以下的特点:每个节点有零个或多个子节点;没有父节点的节点称为根节点;每一个非根节点有且只有一个父节点;除了根节点外,每个子节点可以分为多个不相交的子树

二叉树

二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆。 二叉树的每个结点至多只有二棵子树(不存在度大于2的结点),二叉树的子树有左右之分,次序不能颠倒。二叉树的第i层至多有2{i-1}个结点;深度为k的二叉树至多有2k-1个结点;对任何一棵二叉树T,如果其终端结点数为n_0,度为2的结点数为n_2,则n_0=n_2+1。 一棵深度为k,且有2^k-1个节点称之为满二叉树;深度为k,有n个节点的二叉树,当且仅当其每一个节点都与深度为k的满二叉树中,序号为1至n的节点对应时,称之为完全二叉树
树(Tree)是n(n>=0)个结点的有限集。n=0时称为空树。在任意一棵非空树中:(1)有且仅有一个特定的称为根(root)的结点。

名词理解

结点:指树中的一个元素;

结点的度:指结点拥有的子树的个数,二叉树的度不大于2;

数的度:指树中的最大结点度数;

叶子:度为0的结点,也称为终端结点;

高度:叶子节点的高度为1,根节点高度最高;

:根在第一层,以此类推

重要基本概念

(1)节点node:树中的一个数据项及指向分支的指针项

(2)节点的度degree:节点的子树的数目,比如上图中节点4的度为2

(3)树的度degree:树的所有节点中度的最大值,比如上图中节点1的度最大,为3

(4)叶子节点:树中度为0的节点,比如上图中节点3、5、6、7

(5)非叶子节点:树中度不为0的节点,比如上图中1、2、4

(6)孩子节点和双亲节点:节点子树的根称为该节点的孩子节点,该节点称为孩子节点的父节点(或双亲节点parent),比如上图中节点2为节点5的父节点,结点5为节点2的孩子节点

(7)兄弟节点:对于相同父节点的所有孩子节点来说,互为兄弟节点,比如上图中2、3、4互为兄弟节点,且6、7互为兄弟节点

(8)层次:前面已经提到,树是一种层次结构,节点的层次是按照递归定义的。将树的根节点层次定义为1,除根节点以外所有的节点层次为其父节点层次加1。比如上图中节点4的层次为2,节点6的层次为3

(9)树的深度(depth):树所有节点的层次值的最大值,比如上图中树的层次值最大为3,即树的深度(或称为高度)为3

(10)堂兄弟节点:同一“层次”的所有节点称为堂兄弟节点,比如5、6、7节点

(11)层次路径:从根节点到某x节点所经过的所有节点,称为节点x的层次路径(有且仅有一条路径,绝不会存在两条不同路径)

(12)祖先:在某x节点的层次路径上的所有节点,称为x节点的祖先(不包括x本身)

(13)子孙节点:当某一节点视为根节点时,其所有子树上的节点,都称为该节点的子孙节点

(14)森林forest:多个互不相交的树构成的集合

树及二叉树的思维导图

技术分享图片

树和二叉树

原文:https://www.cnblogs.com/leeqq123/p/14721096.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!