假定有3000个记录需要存储到一个散列文件中,文件中每个页块可以存储5个记录,若散列函数为H(K)=K%73并用开散列方法处理冲突,则每个桶所对应的单链表的平均长度至少为()。
A、1
B、5
C、9
D、40
A、1
B、5
C、9
D、40
y为整数),这些函数能够当作散列函数吗(即对于插入和查找,散列程序能正常工作吗)?如果能够,它是一个好的散列函数吗?请说明理由。设函数random(m)返回一个0到m-1之间的随机整数(包括0与m-1在内)。
(1)Hash(key)==key/m;
(2)Hash(key)=1;
(3)IIash(key)==(key+random(m))%rn;
(4)Hash(key)=key%p(m);其中p(m)是不大于m的最大素数。
A.非聚集索引查询时先从索引页上获取记录位置,再找到所需要的记录内容
B.聚集索引改变数据表中记录的物理存储顺序,使之与索引列的顺序完全相同
C.聚集索引查询时先从索引页上获取记录位置,再找到所需要的记录内容
D.非聚集索引不改变数据表中记录的存放顺序,只是将索引建立在索引页上
指定n的值,这里只计算为n奇数的魔方。
把魔方数存储在二维数组中,首先把1放在第0行的中间,剩下的数2,3,…,n2依次向上移动一行,并向右移动一列。当可能越过数组边界时需要“绕回”到数组的另一端。例如,如果需要把下一个数放到-1行,就将其存储到n-1行(最后一行);如果需要把下一个数放到第n列,就将其到第0列。如果某个特定的数组元素已被占用,就把该数存储在前一个数的正下方。
设α是散列表的装载因子,则应用线性探查法解决冲突时的搜索成功的平均搜索长度和搜索不成功的平均搜索长度分别为:
请根据题意选择合用的公式。
(1)散列表的大小应该是多少?
(2)如果散列函数采用除留余数法,写出散列两数的定义;
(3)若已有的8个记录分别为(58,87,38,95,49,75,64,47),依次将它们存放到表中;
(4)计算搜索成功的平均搜索长度和搜索不成功的平均搜索长度。