-- 红黑树
--Allen--
我知道我不知道。
展开
-
二叉搜索树
红黑树不仅是二叉树,也是二叉搜索树。如果你想学习红黑树,却不了解二叉搜索树的性质,这就是典型的爬还没学会就想学走。所以本文就来讨论二叉搜索树的一点简单的性质以及操作。在此之前,你需要下载这份代码(C++),并对照实现:https://github.com/ivanallen/dsa1. 性质二叉树中:对于任意一个节点,左孩子的值都它的值小,右孩子的值比它的值大。(二叉搜索树一定满足这个性...原创 2019-03-02 00:12:30 · 1528 阅读 · 2 评论 -
二叉树旋转
本文我们来学习二叉树的另一种操作——旋转。掌握了这个神技,你将会在平衡树的道路上所向披靡。1. 什么是旋转二叉树节点旋转一共有两种操作:左旋和右旋。如图 1 所示,左边的二叉树通过左旋得到右边的二叉树;反之右旋同理。(a, b, c 表示子树,而不是单独表示一个节点) 图1 左旋和右旋 左旋:是以节点的"右分支"为轴,进行逆时针旋转。我们将左旋操作定义为 left_rotate.右...原创 2019-03-03 20:15:27 · 11628 阅读 · 1 评论