平衡二叉搜索树与AVL树有何区别?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2085个文字,预计阅读时间需要9分钟。
文章目录回顾:- 二叉搜索树- AVL树的定义- AVL树的插入- 平衡因子调整:左单旋、右单旋、右左双旋、左右双旋- 总结- 回顾二叉搜索树- 首先我们回顾一下我们实现的二叉搜索树
文章目录回顾二叉搜索树AVL树AVL树的定义AVL的插入平衡因子的调整左单旋转右单旋转右左双旋左右双旋总结回顾二叉搜索树首先我们回顾一下先前我们实现的二叉搜索树.文章目录
- 回顾二叉搜索树
- AVL树
- AVL树的定义
- AVL的插入
- 平衡因子的调整
- 左单旋转
- 右单旋转
- 右左双旋
- 左右双旋
- 总结
回顾二叉搜索树
首先我们回顾一下先前我们实现的二叉搜索树. 首先这棵二叉树的每一个节点都满足左子树都比它小右子树都比它大。 虽然听上去似乎可以每次查找砍掉一半的搜索范围。但是实际上这个二叉搜索树的时间复杂度是O(n)! 而当数据接近有序的时候二叉搜索树就会退化成单边树或者是两边高度差的很多在这种情况下搜索树的优势就荡然无存了所以为了保持搜索树的高效性所以我们需要对搜索树的左右子树高度进行调整使得这棵树平衡。
本文共计2085个文字,预计阅读时间需要9分钟。
文章目录回顾:- 二叉搜索树- AVL树的定义- AVL树的插入- 平衡因子调整:左单旋、右单旋、右左双旋、左右双旋- 总结- 回顾二叉搜索树- 首先我们回顾一下我们实现的二叉搜索树
文章目录回顾二叉搜索树AVL树AVL树的定义AVL的插入平衡因子的调整左单旋转右单旋转右左双旋左右双旋总结回顾二叉搜索树首先我们回顾一下先前我们实现的二叉搜索树.文章目录
- 回顾二叉搜索树
- AVL树
- AVL树的定义
- AVL的插入
- 平衡因子的调整
- 左单旋转
- 右单旋转
- 右左双旋
- 左右双旋
- 总结
回顾二叉搜索树
首先我们回顾一下先前我们实现的二叉搜索树. 首先这棵二叉树的每一个节点都满足左子树都比它小右子树都比它大。 虽然听上去似乎可以每次查找砍掉一半的搜索范围。但是实际上这个二叉搜索树的时间复杂度是O(n)! 而当数据接近有序的时候二叉搜索树就会退化成单边树或者是两边高度差的很多在这种情况下搜索树的优势就荡然无存了所以为了保持搜索树的高效性所以我们需要对搜索树的左右子树高度进行调整使得这棵树平衡。

