首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >布谷鸟散列插入是如何工作的?

布谷鸟散列插入是如何工作的?
EN

Stack Overflow用户
提问于 2015-04-09 04:09:15
回答 2查看 205关注 0票数 1

根据关于布谷鸟散列插入如何工作的documentation,如果value1要使用散列函数h1插入到位置h1(key1)处的table1中,并且h1(key1)已经因为(key2,value2)被插入使得h1(key2) = h1(key1)而被占用,则布谷鸟散列算法计算h2(key2)并尝试在中的位置h2(key2)处插入value2。重复此过程。

所述的查找算法是:

代码语言:javascript
复制
function lookup(x)
    return T1[h1(x)] = x ∨ T2[h2(x)] = x
end

但是,在查找key2的值时,value2可以是h1(key2)或h2(key2)。如果h1(key1) = h1(key2),则h1(key1)可以是value1 (发生驱逐)或value2 (不驱逐)。布谷鸟散列算法如何知道在哪个表中查找value2?

EN

回答 2

Stack Overflow用户

发布于 2015-04-09 04:23:59

似乎代码首先在T2处返回值,如果失败,则在T1处返回值。

代码语言:javascript
复制
function lookup(x)
    return T1[h1(x)] = x ∨ T2[h2(x)] = x
end
票数 1
EN

Stack Overflow用户

发布于 2015-04-09 04:24:05

只有一种方法可以找出答案:检查两个地点。或者一般而言,key2可能去过的所有地方。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29524399

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档