数据结构之查找 B-树和B+树

本文介绍了数据结构中的查找表,包括静态查询表和动态查询表,重点讲解了B-树和B+树的查找、插入和删除操作。B-树是一种平衡的多路查找树,而B+树则更适用于文件系统,具有更稳定的查询效率和排序功能。
摘要由CSDN通过智能技术生成

今天主要讲的是在查找时常用的数据结构:平衡二叉树,B-树和B+树。
今天所有的学习知识都是参考严蔚敏教授的《数据结构》这本书,由于这本书是从查找表这章引入的B树,B+树和B-树,所以,我们就先从查找表讲起,并在里面扩充一些常见的知识点。

查询表

查找表(search table)是一种数据结构,常见的操作有:

  1. 查询某个元素是否在查找表中
  2. 查询某个元素的属性
  3. 在查找表插入一个元素
  4. 在查找表中删除某个元素

根据这常见的四个操作,查找表可以分为静态查找表和动态查找表。如果只对查找表的元素进行前两中“查询”操作,则此类查询表为静态查询表;若对查找表中元素进行“更新”操作(增删操作),则此类查询表为动态查询表。

静态查询表

对于查找表的查询操作,归其本源还是一个遍历的过程。
而对于有序表的操作,直接解决思想就是二分法或者叫折半查找法。(:这里的这般查找法仅限于顺序存储结构,对线性链表不能使用)
进行查找的方法除了折半查找之外(将元素每次二等分),还有斐波那契查找(将元素每次斐波那契序列等分)。

斐波那契查找

如果将表按照斐波那契序列的值(如下所示)进行分割
F 0 = 1 , F 1 = 1 , F i = F i − 1 + F i − 2 , i > 1 F_0=1,F_1=1,F_i=F_{i-1}+F_{i-2},i>1 F0=1,F1=1,Fi=Fi1+Fi2,i>1
使得每个元素段中元素的个数为 F i F_i Fi。假设开始时&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值