C++ 数据结构(树——二叉树)


树的定义与表示

树的定义

树是你(n>=0)个节点的有限集T(T为空是空树),非空树具有两个条件。
有且仅有一个根节点作为树根;其余节点可分为M个互不相交的子集T1,Tm。其中每一个子集本手又是一颗树,称其为跟节点的子树。(递归思想)
树的二元组表示:T=(D,R)
D:树T中的节点集合,R:树中的节点关系。
二元组另外一种表示:T=(root,F)
root:树根节点;F:所有子树够成的森林。

树的表示

树形表示法,广义表表示法,嵌套集合表示法,凹入表示法如图:
在这里插入图片描述

树的特点

树=根节点+子树(节点+关系)
根节点特点:没有前驱,有且只有一个根节点。
树中所有节点:都只有一个前驱,多个后继节点。

与树相关术语

节点的度:树中拥有的子树数量陈伟该节点的度。度数为零:叶子节点(终结点)。根节点(又称开始节点)
孩子双亲:树中某个节点的子树成为给节点的孩子节点或子节点,相应地,该节点称为子节点的双亲节点或父节点。同一个父节点的两个节点成为兄弟节点。
路径:树中存在一个节点序列k1 k2 kn ,使得kn是km的双亲,则称该节点序列是从k1到km的一条路径或道路。路径长度m-1。
层数和高度:根节点的高度:节点到最远子叶的路径长度;层数:根节点记为0/1 非根节点的层数= 其父节点的层数+1
祖先子孙:有序树无序树:有向树:森林

树的存储

树的顺序存储
双亲链表表示法
在这里插入图片描述
孩子表示法
在这里插入图片描述
孩子兄弟表示法
在这里插入图片描述

在这里插入图片描述


  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Echo一

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值