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

搜索二叉树

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

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

搜索二叉树删除:

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

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

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

 

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

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

 

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

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

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

 

红黑树平衡性:

  节点为红或黑

  root和叶子节点必须黑

  红红不能相邻

  黑高(每个路黑节点一样多)
posted @   rudynan  阅读(57)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示