我试图做一种形式的合并哈希,要做到这一点,我需要维护多个链表,当你试图插入一些东西到表中,它与另一个对象碰撞时创建。如何在add(object x)函数中创建多个链表,然后能够在find(object x)函数中再次调用相同的列表?
例如,如果我的哈希值是5,并且桶5被占用,我创建一个以桶5为头的链表,然后创建一个新节点,我试图放入5的对象最终被放入。这样,当我稍后尝试查找对象时,而不是探测表,我可以遵循我创建的引用槽5的链表并遵循它到我的对象。
我的问题是,我无法弄清楚如何维护不同碰撞的多个链表,然后在我试图找到对象时调用适当的列表。如有任何帮助,不胜感激。
如果您试图复制类似HashMap
的东西(听起来很像),您将希望在搜索树中保留链表,以便您可以找到合适的列表来插入和,以便在合理的时间内找到对象。