当采用分块查找时,数据的组织方式为()。
- A.数据分成若干块,每块内数据有序
- B.数据分成若干块,每块内数据不必有序,但块间必须有序,每块内最大(或最小)的数据组成索引块
- C.数据分成若干块,每块内数据有序,每块内最大(或最小)的数据组成索引块
- D.数据分成若干块,每块(除最后一块外)中数据个数需相同
正确答案及解析
正确答案
B
解析
分块查找要求按如下的索引方式来存储线性表,其分块方法如下:将表R[O..n-l]均分为b块,前b-l块中记录个数为s=s[n/b],最后一块即第b块的记录数小于等于s;每一块中的关键字不一定有序;但前一块中的最大关键字必须小于后一块中的最小关键字,即要求表是分块有序的;抽取各块中的最大关键字及其起始位置构成一个索引表IDX[O..b-1],即IDX[i](O<i<b-1)中存放着第i块的最大关键字及该块在表R中的起始位置。由于表R是分块有序的,因此索引表是一个递增有序表。