算法-bst-平衡搜索二叉树-1

搜索二叉树

默认没重复节点,左边节点小于根节点 右子节点大于根节点

重复的节点可以用list保存或者value增加1

搜索二叉树删除:

1. 没孩子 直接删除 父节点指向为null

2. 有一个孩子 父节点指向孩子

3. 有两个孩子 取左孩子的最右孩子 或 取右孩子的最左节点

avl树/红黑树/sb树的区别是 判断平衡的条件不一样

avl平衡性 严格要求左树和右树的高度差不超过1

sb树平衡性:每棵子树的大小 不小于其兄弟的子树大小 即叔叔树大于侄子树大小

左侄子节点数量大于 叔叔节点的数量 LL型 左叔叔节点右旋 右旋后哪个节点的孩子节点发生变化再平衡

右侄子节点数量大于 叔叔节点的数量 LR型 右侄子旋转称为root节点 哪个节点孩子节点变化再平衡

红黑树平衡性:

  节点为红或黑

  root和叶子节点必须黑

  红红不能相邻

  黑高(每个路黑节点一样多)
原文地址:https://www.cnblogs.com/isnotnull/p/15080159.html