当前位置: 首页 > news >正文

二叉查找树,平衡二叉树(AVL),b树,b+树,红黑树

🌲 一、二叉查找树(Binary Search Tree,简称 BST)

📌 定义

二叉查找树是一棵二叉树,它满足这样的特性:

  • 每个节点最多有两个子节点(左、右)
  • 对于任意一个节点:
    • 左子树的所有节点值都比它
    • 右子树的所有节点值都比它

📈 举个例子

复制代码

      10/  \5   20/ \    \3   8   25
  • 根是10
  • 左边是比10小的所有节点
  • 右边是比10大的所有节点
  • 递归结构也成立(子树也是BST)

✅ 优点

  • 中序遍历会得到有序序列
  • 插入、查找、删除的平均时间复杂度是 O(log n)

❌ 缺点

  • 如果插入的数据本身是有序的(如 1, 2, 3, 4, 5…),树会变得像链表,性能退化成 O(n)

⚖️ 二、平衡二叉树:AVL树

📌 定义

AVL树是最早被提出的自平衡二叉查找树

  • 和BST一样,但它会在插入/删除时自动调整结构&#
http://www.xdnf.cn/news/320131.html

相关文章:

  • 实验一:Linux静态路由
  • 如何利用 Elastic Load Balancing 提升应用性能与可用性?
  • VScode一直处于循环“正在重新激活终端“问题的解决方法
  • 软件设计师2025
  • 隐私计算技术及其在数据安全中的应用:守护数据隐私的新范式
  • Word如何制作三线表格
  • ABB机器人基础课件及培训视频教程
  • RabbitMQ中Exchange交换器的类型
  • 国产Word处理控件Spire.Doc教程:在Java中为Word文本和段落设置边框
  • 【Pandas】pandas DataFrame rolling
  • ✨WordToCard使用分享✨
  • 2-C#控件
  • [数据库之九] 数据库索引之顺序索引
  • Cloudera CDP 7.1.3 主机异常关机导致元数据丢失,node不能与CM通信
  • 007 Linux 开发工具(上)—— vim、解放sudo、gc+
  • Java学习手册:ORM 框架性能优化
  • 嵌入式软件学习指南:从入门到进阶
  • 澳鹏亮相2025中国生成式AI大会,以数据赋能大模型垂类应用新纪元
  • 42. PCB防静电环设计
  • QT人工智能篇-opencv
  • Kafka是什么?典型应用场景有哪些? (消息队列、流处理平台;日志收集、实时分析、事件驱动架构等)
  • CentOS 系统升级失败的原因与排查
  • LED实验
  • Web前端入门及基础代码
  • webRtc之指定摄像头设备绿屏问题
  • Java程序题案例分析
  • C++排序算法(一)
  • 智能工单系统如何提升企业IT运维效率
  • VLM-AD:通过视觉语言模型监督实现端到端自动驾驶
  • 【信息系统项目管理师】【2017年-2024年】58个案例概念题