哈希作为一个整体

时间:2015-02-12 06:41:57

标签: c++ hash

对于我的一个计算机科学课程,我们需要编写一个程序,该程序使用散列来存储键和伴随值的列表。这个问题实际上并不是哈希方法,我只是对实现数据结构/使用什么数据结构的最佳方式感到好奇。

通过我们的书和谷歌上的一些基本搜索,我注意到它并不是一个真正的最好的方法"用于存储值。我似乎遇到的只是链表的碰撞解决方法等。

那么有一个"最好的"用于散列的通用数据结构?这是我第一次真正将哈希付诸实践与算法分析,所以我真的没什么可走的。

旁注:我熟悉链接列表和某些程度树(从未在实践中使用过)。

1 个答案:

答案 0 :(得分:1)

如果这是计算机科学课的作业,那么我建议你采用最简单的哈希方法。

在一个简单的场景中,你可能的哈希值是来自有限集的整数,比如从0到n-1。为此你需要一个长度为n的数组。

您在阵列中存储的内容是下一步......在一个简单的场景中,您不应该处理碰撞算法。如果发生冲突,您只需将所有元素存储在链接列表中的相同数组索引处。在那里你有关于存储在数组中的内容的答案。