给定一组查找关键字(32,15,7,11,4,28,56.61,79),哈希表长为m=12,请按照除留余数法
时间: 2024-01-05 11:01:12 浏览: 193
haxibiao.rar_MOD_哈希表 平均查找长度
5星 · 资源好评率100%
除留余数法是一种常用的哈希函数,在这个问题中,我们需要根据给定的关键字和哈希表长来进行哈希。根据除留余数法的原理,我们将关键字除以哈希表长,然后取余数作为哈希函数的值。
给定一组查找关键字(32,15,7,11,4,28,56,61,79),哈希表长为m=12,在除留余数法下,我们可以按照以下步骤进行哈希:
1. 将给定的关键字依次进行哈希:
- 32 % 12 = 8
- 15 % 12 = 3
- 7 % 12 = 7
- 11 % 12 = 11
- 4 % 12 = 4
- 28 % 12 = 4
- 56 % 12 = 8
- 61 % 12 = 1
- 79 % 12 = 7
2. 将哈希后的关键字插入到对应的哈希表中:
索引为0的位置:无
索引为1的位置:61
索引为2的位置:无
索引为3的位置:15
索引为4的位置:4, 28
索引为5的位置:无
索引为6的位置:无
索引为7的位置:7, 79
索引为8的位置:32, 56
索引为9的位置:无
索引为10的位置:无
索引为11的位置:11
最终,我们按照除留余数法将给定的关键字哈希到了对应的位置上。可以看到,哈希表中出现了冲突,即多个关键字哈希到了同一个位置上。这种情况下,我们可以使用链地址法或者开放寻址法来解决冲突。在链地址法中,我们可以使用链表将多个关键字链接起来放在同一个位置上。
以上就是按照除留余数法将给定一组查找关键字(32,15,7,11,4,28,56,61,79)哈希到哈希表中的步骤和结果。
阅读全文