简介:
分块查找又称索引顺序查找,它是顺序查找的一种改进方法,性能优于顺序查找。
方法描述:
将n个数据元素“按块有序”划分为m块(一般块的长度均匀,最后一块可以不满)(m<=n),每一块中的节点不必有序,但块与块之间必须“按块有序”;即第一块中的关键字必须小于(或者大于)第二块中的关键字,第二块中的关键字必须小于(或者大于)第三块中的关键字,构造索引表,索引表按关键字有序排列。
如下图所示:
图示为一个索引顺序表,其中包括三个块,第一个块的其实地址为0,快内最大关键字为25;第二个块的其实地址为5,块内最大关键字为58;第三个块的起始地址为10,块内最大关键字为88。
分块查找基本步骤:
Step1、先选取各块中最大关键字构成一个索引表;
Step2、查找分两个部分:先对索引表进行二分查找或顺序查找,以确定待查记录在哪一块中;然后,在已确定的块中用顺序法进行查找。
原文地址:http://blog.csdn.net/woody891/article/details/39290095