数据结构-查找-线性索引查找(对于无序顺序存储,建立索引快速查找)
Posted lemonzhang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据结构-查找-线性索引查找(对于无序顺序存储,建立索引快速查找)相关的知识,希望对你有一定的参考价值。
1、索引
我们前面提到的几种高效查找方法都是基于有序的基础上的,但是实际上,很多数据集可能增长非常快。例如空间动态信息等,对于这样的查找表,我们若是保证记录全部按照当中某个关键字有序,其维护的时间代价非常高,所以这种数据通常是按照先后顺序存储。
数据结构的最终目的就是提高数据的处理速度,索引是为了加快查找速度而设计的一种数据结构。索引就是把一个关键字与他对应的记录相关联的过程。
一个索引由若干个索引项构成,每个索引项至少应包含关键字和其对应的记录在存储器中的位置等信息。
索引技术是组织大型数据库以及磁盘文件的一种重要技术。
索引按照结构可以分为线性索引,树形索引和多级索引。
所谓线性索引就是将索引项集合组织为线性结构,也称为索引表。
2、稠密索引
稠密索引文件的每个记录都有一个索引项,记录在数据区存放是任意的,但索引是按序的,这种索引称为稠密索引。
稠密索引是指在线性索引中,将数据集中的每个记录对应一个索引项。
稠密索引是因为索引项和数据集的记录个数相同,所以空间代价很大。
3、分块索引
我们可以对数据集进行分块,使其分块有序,然后再对每一块建立一个索引项(类似于图书馆的分块)。
在分块索引表中查找,可以分为两步:
通过关键字的记录号表查找,其中记录号表存储具有相同次关键字的所有记录的记录号(可以是指向记录的指针或者是该记录的主关键字)。这种索引方法就是倒排索引。
以上是关于数据结构-查找-线性索引查找(对于无序顺序存储,建立索引快速查找)的主要内容,如果未能解决你的问题,请参考以下文章