数据结构:索引之线性索引

声明:本文为学习 数据结构与算法分析(第三版) Clifford A.Shaffer 著 的学习笔记,代码有参考该书的示例代码。

索引

索引(indexing)是把一个关键码与它对应的数据记录的位置相关联的过程。

主码(primary key)是数据库中的每一条记录唯一的标识。
辅码(secondary key)是数据库中多条记录具有的相同的关键码值。

索引技术有线性索引、ISAM索引和基于树的索引。
这里简单说说线性索引中的倒排表。会有更详细的内容说明基于树的索引(2-3树、B树、B+树、红黑树等)

倒排表

由辅码与一个或多个标识号关联起来,标识号索引再关联一个标识号和一个完整记录的指针关联起来,这样组织起来的辅码索引称为倒排表(inverted list)或倒排文件(inverted file)。
这里写图片描述

倒排表有一种简单的变体,这种会更容易从数组中插入和删除,如下:
这里写图片描述
倒排表中辅码与记录主码数组通过索引关联起来,而主码中增加next 指针域,关键起多个记录。

基于树的索引在博客的后续文章中介绍。

–END–

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值