云南理工大学linux教学-红黑树算法.docVIP

  • 1
  • 0
  • 约1.29万字
  • 约 15页
  • 2017-07-28 发布于浙江
  • 举报
? 详解Linux内核红黑树算法的实现 分类:?linux内核修炼之其它?基本算法2012-04-11 17:02?8639人阅读?评论(7)?收藏?举报 linux内核structinsertnulltree算法 ? ? 开发平台:Ubuntu11.04 ? ? 内核源码:linux-2.6.38.8.tar.bz2 ? ? ? 关于二叉查找树的概念请参考博文《详解二叉查找树算法的实现》。 ? ? 平衡二叉树(BalancedBinary Tree或Height-Balanced Tree)又称AVL树。它或者是一棵空树,或者是具有下列性质的二叉树:它的左子树和右子树都是平衡二叉树,且左子树和右子树的深度之差的绝对值不超过1。若将二叉树上结点的平衡因子BF(BalanceFactor)定义为该结点的左子树的深度减去它的右子树的深度,则平衡二叉树上所有结点的平衡因子只可能是-1、0和1。(此段定义来自严蔚敏的《数据结构(C语言版)》) ? ? 红黑树是一种在插入或删除结点时都需要维持平衡的二叉查找树,并且每个结点都具有颜色属性: ? ? (1)、一个结点要么是红色的,要么是黑色的。 ? ? (2)、根结点是黑色的。 ? ? (3)、如果一个结点是红色的,那么它的子结点必须是黑色的,也就是说在沿着从根结点出发的任何路径上都不会出现两个连续的红色结点。 ? ? (4)、从一个结点到一个

文档评论(0)

1亿VIP精品文档

相关文档