数据结构复习--树

本文详细介绍了树和二叉树的概念,包括它们的定义、表示方法、性质和基本运算。讨论了树的存储结构,如双亲存储、孩子链存储等,并深入探讨了二叉树的特性,如满二叉树、完全二叉树。此外,还涵盖了二叉树的遍历、构造、线索二叉树以及哈夫曼树的构造和编码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

树和二叉树

内容提纲


树的概念

树的定义

形式化定义:

对于树:T={D, R},D是包含n个结点的有限集合,当n=0时为空树,否则关系R满足以下条件:

  • 有且仅有一个根节点
  • 除根节点之外,每个节点有且仅有一个前驱结点
  • 每个节点可以有零个或者多个后继结点
递归定义:

树是由n个结点组成的有限集合,其中:

  • 如果n=0,则其为空树
  • 如果n>0,则存在唯一一个根节点,该根节点的每一个孩子节点又作为一棵子树的根节点。

树的(逻辑)表示方法

  • 树型表示法
  • 文氏图表示法
  • 凹入表示法
  • 括号表示法

树的一些性质

  • 树中的节点数=所有节点的度数之和+1
  • 度为m的树中第i层上至多有 m i − 1 m^{i-1} mi1个节点
  • 高度为h的m次树至多有 m h − 1 m − 1 \frac {m^h-1}{m-1} m1mh1个节点
  • 有n个节点的m次树的最小高度为 ⌈ \lceil log ⁡ m ( n ( m − 1 ) + 1 ) \log_m(n(m-1)+1) logm(n(m1)+1) ⌉ \rceil
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值