问答题
假设我们需要将26个大写英文字母分布到5个存储桶中(地址从0到4),那么散列函数h该如何设计呢?
【正确答案】
假设用code(A)表示A所对应的编号0,用code(B)表示B所对应的编号1,用code(C)表示C所对应的编号2……
{A,B,C,…,Z}上的一个散列函数可以设计成:
h=code(Search Key)mod 5
那么26个大写字母的分配如下图所示。
【答案解析】
[解析] 本题主要考查散列函数的设计问题。散列函数设计时要保证其均匀性和随机性,来防止桶溢出和减少查找时间。
提交答案
关闭