quadratic-probing

    0热度

    1回答

    我想在Python中编写一个函数,它会将字符串添加到哈希表中,并且在不导入数学的情况下使用二次探测解决任何冲突。 def addString(string, hashTable): collisions = 0 stop = False slot = (hashString(string, len(hashTable))) while not stop:

    2热度

    1回答

    我试图计算探头的使用钥匙插入到一个列表时(必须经过索引或数字)的数量二次探测 我 def hash_quadratic(key, values): tablesize=len(values) index=key%tablesize probes=0 if values[index] is None: values[index]=key

    1热度

    1回答

    我真的需要帮助插入哈希表。我现在不完全明白。有人可以用外行的话来解释二次和线性探测吗? public void insert(String key) { int homeLocation = 0; int location = 0; int count = 0; if (find(key).getLocation() == -1) // make sur

    0热度

    1回答

    如果有人能够帮助解决这个问题,我将非常感激。问题是: 考虑以下散列函数:对于某些正数,h(k,i)=(h'(k)+(1/2)(i + i^2))mod m,其中m = 2^p整数p。证明或证明对于任何k,探针序列是< 0,1,2,...,m-1的置换。

    1热度

    2回答

    最近我一直在学习哈希表。有几个碰撞解决方案的例子,其中一个是二次探测。为什么有人会使用二次探测?他知道散列表总是少于一半吗?如果是的话,他为什么要用这么大的桌子开始呢?

    3热度

    2回答

    我目前的散列表实现是使用线性探测,现在我想要移动到二次探测(后来链接,也许双哈希)。我读过一些文章,教程,维基百科等......但我仍然不知道我应该做什么。 线性探测,基本上,有1步,这很容易做到。在搜索时,插入或从哈希表中移除元素,我需要计算一个哈希并为我这样做: index = hash_function(key) % table_size; 然后,当查找,插入或通过表中删除我循环,直到我

    4热度

    1回答

    我有一个区分二次和线性探测算法的问题。当我在阅读概念性解释时,我看到我^ ^被重复添加到最后一个索引的尝试。这里的情况如何?线性探测会将此变为什么?从我正在阅读的内容来看,下面的方法实现了二次探测。 private int findPosQuadratic(AnyType x) { int offset = 1; int currentPos = myhash(x);

    0热度

    1回答

    我创建了一个哈希映射类,除了使用迭代器外,它模仿stl映射。所以,现在我的问题是通过哈希映射循环,而不使用迭代器,并打印出与某个Key相关联的Value。类本身是模板化的,但main.cpp中使用的值是一个字符串向量。我将如何制作打印功能来打印与钥匙相关的项目(值)?我试着写一个printElements()函数,但它只打印Key。先谢谢你。 这里是我的散列映射类: // // HashMap.