数据结构

  • 数组:查询快,插入慢,查找复杂度 O(N)

  • 链表:查询慢,插入快,查找复杂度 O(N)

  • 哈希表:查询复杂度 O(1)

  • 二叉树:查找复杂度 O(logN)

树是一种非线性的数据结构,相对于线性的数据结构(链表、数组)而言,树的平均运行时间更短(往往与树相关的排序时间复杂度都不会高)

 

数据库索引是B+树,是平衡树的一种

如果一棵普通的树在极端的情况下,是能退化成链表的(树的优点就不复存在了)

B+树是平衡树的一种,是不会退化成链表的,树的高度都是相对比较低的(基本符合矮矮胖胖(均衡)的结构)

  • B+树是一颗平衡树,如果我们对这颗树增删改的话,那肯定会破坏它的原有结构

  • 要维持平衡树,就必须做额外的工作。正因为这些额外的工作开销,导致索引会降低增删改的速度

posted @   hjy1995  阅读(86)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示