《数据结构和Java集合框架第三版》读书笔记(九)平衡二叉搜索树的旋转
来源:互联网 发布:surge mac 下载 编辑:程序博客网 时间:2024/04/30 23:05
平衡二叉搜索树的高度是n的对数。
旋转(rotate)是保持树平衡的基本机制。
左旋转:将一个元素x移动到它的左子结点位置,而该元素的右子结点y移动到该元素原有的位置,而y的左孩子移动到了x的右孩子位置。
(因为x的右孩子y的左子树的任意元素都大于x小于y)
右旋转:与左旋转的代码对称,交换”左“”右“两个词即可。
双旋转:绕某元素的左孩子的左旋转,接着绕该元素自己的右旋转。或者 绕某元素的右孩子的右旋转,接着绕该元素自己的左旋转。
不在被旋转子树中的元素,在旋转中没有变化;
旋转需要常量时间O(1);
旋转前后的树都是二叉搜索树;
旋转中位置的改变的实质是对引用的改变,或者说指针域被改变了,结点的其他域保持不变。
- 《数据结构和Java集合框架第三版》读书笔记(九)平衡二叉搜索树的旋转
- 《数据结构和Java集合框架第三版》读书笔记(八)二叉搜索树
- 《数据结构和Java集合框架第三版》读书笔记(七)二叉树
- 《数据结构和Java集合框架第三版》读书笔记(零)——数组、类、集合
- Java源码集合类TreeMap学习1——数据结构4平衡二叉树的旋转
- AVL树(高度平衡的二叉搜索树)平衡因子的调节和旋转
- 《数据结构和Java集合框架第三版》读书笔记(二)——二分法检索
- 《数据结构和Java集合框架第三版》读书笔记(三)回溯算法
- 《数据结构和Java集合框架第三版》读书笔记(一)递归
- 《数据结构和Java集合框架第三版》读书笔记(六)LinkedList双向链表
- 《数据结构和Java集合框架第三版》读书笔记(十)简单排序
- 《数据结构和Java集合框架第三版》读书笔记(十一)归并排序
- 《数据结构和Java集合框架第三版》读书笔记(十二)快速排序
- 《数据结构和Java集合框架第三版》读书笔记(五)浅复制(shallow copy)和深复制
- 数据结构,平衡二叉树旋转
- 平衡二叉树的插入和旋转
- 【数据结构】中平衡搜索树的旋转方式解析
- 平衡二叉树(AVL树)的平衡旋转
- Dijkstra算法,单源最短路径(一个起点到各个点的最短距离)
- oracle中动态、静态注册
- Java_io体系之BufferedInputStream、BufferedOutputStream简介、走进源码及示例——10
- 策略模式-鸭子的变化
- hdoj1181(变形课,广搜)
- 《数据结构和Java集合框架第三版》读书笔记(九)平衡二叉搜索树的旋转
- android textview换行问题
- poj 1979
- 慎用多继承
- 状态模式
- JSONObject对象使用
- 日志打印到屏幕同时保存到文件及获取管道返回状态
- 多个版本Unity4.x并存的解决方案
- stl priority_queue