数据结构-树(tree)

1. 基本概念

从结点 n1 nk 的路径(path)定义为节点 n1 , n2 , … , nk 的一个序列,使得对于 1 i < k,节点 n1 ni+1 的父亲。这个路径的长(length)为该路径上的边的条数。

对于任意节点 ni ni 深度(depth)为从根到 ni 的惟一路径的长。因此根的深度为0。 ni (height)是从 ni 到一片树叶的最长路径的长。因此所有的树叶的高都是0,一棵树的高等于它的根的高,而树的深度等于它的最深的树叶的深度;该深度总是等于这棵树的高。

1.1 二叉树的性质

性质1 二叉树第i层上的结点数目最多为2i-1(i≥1)。
性质2 深度为k的二叉树至多有2k-1个结点(k≥1)。
性质3 在任意-棵二叉树中,若终端结点的个数为n0,度为2的结点数为n2,则no=n2+1。
性质4 具有n个结点的完全二叉树的深度为 log2n+1 log2(n+1)

1.2 满二叉树
1.3 完全二叉树
1.4 最优二叉树(哈夫曼树)

2. 二叉查找树

3. 平衡二叉查找树

3.1 AVL树(带有平衡条件的二叉查找树)
3.2 伸展树(splay tree)

4. B树/B+树

5. 红黑树(Red-Black Tree)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值