声明:本文为学习 数据结构与算法分析(第三版) Clifford A.Shaffer 著 的学习笔记,代码有参考该书的示例代码。
索引(indexing)是把一个关键码与它对应的数据记录的位置相关联的过程。
主码(primary key)是数据库中的每一条记录唯一的标识。
辅码(secondary key)是数据库中多条记录具有的相同的关键码值。
索引技术有线性索引、ISAM索引和基于树的索引。
这里简单说说线性索引中的倒排表。会有更详细的内容说明基于树的索引(2-3树、B树、B+树、红黑树等)
由辅码与一个或多个标识号关联起来,标识号索引再关联一个标识号和一个完整记录的指针关联起来,这样组织起来的辅码索引称为倒排表(inverted list)或倒排文件(inverted file)。
倒排表有一种简单的变体,这种会更容易从数组中插入和删除,如下:
倒排表中辅码与记录主码数组通过索引关联起来,而主码中增加next 指针域,关键起多个记录。
基于树的索引在博客的后续文章中介绍。
–END–