假设有K个关键字互为同义词,若用线性探测法把这K个关键字用散列函数H将它们存入长度为m的散列表中(K≤m),则至少共需进行( )次探测。

假设有K个关键字互为同义词,若用线性探测法把这K个关键字用散列函数H将它们存入长度为m的散列表中(K≤m),则至少共需进行( )次探测。


【正确答案】:K(K+1)/2
【题目解析】:

应用线性探测法解决冲突时,是在散列函数H得出的地址基础上+1,若仍然冲突,继续找+2的地址,直到不冲突为止。

本题中,有K个同义词,即K个关键字得到的散列函数是一样的。故第1个关键字需比较1次,第2个关键字比较2次,第3个关键字比较3次,...,第K个关键字比较K次。共需比较的次数是1+2+3+...+K=K(K+1)/2。


Top