数据结构之树——初识树

1 树的定义

由一个或多个(n≥0)节点组成的有限集合T,且仅有一个节点称为根(root),当n> 1时,其余节点分为m(m≥0)个互不相交的有限集合T1,T2,…,Tm。每个集合本身又是一棵树,被称作这个根的子树。树的定义具有递归性,即树中还有树。


2 与树有关的术语

根:即根节点(没有前驱)

叶子:即终端节点(没有后继)

森林:指m棵互不相交的树的集合(例如没有根节点的子树)

有序树:节点各子树从左至右有序,不能互换(左为第一)

无序树:节点各子树可互换位置

双亲:即上层的那个节点(直接前驱parent)

孩子:即下层结点的子树(直接后继child)

兄弟:同一双亲下的同层节点(孩子之间互称兄弟)sibling

堂兄弟:双亲位于同一层次的节点(非同一双亲)cousin

祖先:从根到该结点所经分支的所有节点

子孙:该节点下层子树中的任一节点

结点:树的数据元素

节点的度:节点挂接的子树数(有几个直接后继就是几度)

节点的层次:从跟到该节点的层数(根节点算第一层)

终端节点:度为0的节点,叶子节点

分支节点:除树根以外的节点(内部节点)

树的度:所有节点度中的最大值(Max{各节点的度})

树的深度:所有节点中最大的层数(Max{各节点的层次})

3  树的表示方法

(1)图形表示法


(2)嵌套集合表示法


广义表示法(集合表示法):(A(B(E(K,L),F),C(G),D(H(M),I,J)))

(5)左孩子右兄弟表示法


4 树的逻辑结构

(特点):一对多(1:n),有多个直接后继(如家谱树、目录树等等),但只有一个根节点,且子树之间互不相交。

5 树的存储结构

树是非线性结构,仍然有顺序存储和链式存储等方式。

      树的顺序存储方案:从上至下、从左至右将树的节点依次存入内存。

      重大缺陷:复原困难(不能唯一复原就没有实用价值)

      树的链式存储方案:一个前驱指针,n个后继指针。


  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值