继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

浅谈数据结构中树的逻辑结构(树的定义)

JustSamPle
关注TA
已关注
手记 3
粉丝 1
获赞 36

一、引入
树在我们生活中随处可见,当然除非你的生活环境比较特殊(沙漠等)。树有根,有树干、树枝、树叶。而我们今天要讨论的是数据结构中的树,它的结构和我们生活中的树几乎无异,下面我将为大家一一讲解树的定义及其存储结构。

二、树的定义

①首先我们得确定一个概念,树是一个有限的集合,集合中的元素称为结点。
1、结点的个数为0:称为空树。
2、结点的个数为1:此节点称为根节点。
3、节点的个数大于1:则除了根结点以外的结点又可分为多个集合,每一个集合本身其实质上也是一棵树,并且是根节点的子树。

②注意:1、树之间是没有交叉的;
               2、当节点数大于0时,树的根节点是唯一的,一棵树只能有一个根节点;

③结点的分类:在这里有一个度的概念:一个结点拥有子树的个数称为该节点的度。
       1、度为0的结点称为叶子节点,相当于我们现实当中的树,如果到了叶子那段,说明往下就没有了;
       2、根节点是最开始的结点,是唯一的结点;
       3、在根节点和叶子节点之间的结点称为内部节点,或者叫分支节点、非终端结点。

④结点之间的关系表示:和我们人类之间亲属的关系表示一样,结点的子树的根节点称为该节点的孩子结点,反之,该节点称为孩子结点的双亲结点(父母同体);同一个双亲结点下的孩子结点互称为兄弟。另外还得注意,结点的祖先是从根节点途径到该节点的路径所经过的所有结点,包括根节点。以某一节点为根节点的子树下的所有节点都是该根节点的子孙。

⑤节点的层次:我想听到层次这个概念大家应该不会陌生。规定根节点为第一层,它的孩子为第二层,若某一结点在第k层,则它的孩子在第k+1层。输的深度就是节点的最大层次。

⑥森林:森林是树的集合

⑦树结构和线性结构的区别:
     1、线性结构的第一个数据元素无前驱,最后一个元素无后继,中间的元素有一个前驱和一个后继;
     2、树结构的根节点没有双亲,并且是唯一的;叶子节点可以有多个,没有孩子结点,中间的结点有一个双亲并且有一个或多个孩子。
打开App,阅读手记
4人推荐
发表评论
随时随地看视频慕课网APP