首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
为了能有效地应用HASH查找技术,必须解决的两个问题是[$#
[填空题]
为了能有效地应用HASH查找技术,必须解决的两个问题是
1
和
2
。
添加笔记
求解答(1)
邀请回答
收藏(0)
分享
纠错
2个回答
添加回答
0
格雷厄姆在刷题
1、hash 函数;
2、hash 冲突的处理:
开放寻址法:线性寻址和平方寻址(移动距离分别为1和某值的平方)
双重 hash 法:再用一个 hash 函数去第二次散列
拉链法:在冲突的位置拉出一个链表,但是在最坏情况下,会造成 O(N)的结果,因此在 jdk 1.8中,当超过8个数据hash到了同一个地址的时候,会将拉链法转换成红黑树。 8 个数据的来源有两处:第一,log2(8) = 3,超过三层才有转换的必要;第二,根据泊松分布(这和hash函数的选取有关),8个数据在同一个位置的概率低于千万分之一(P=0.00000006)
,如果真的发生了要转换的情况,一般而言并不是数据的问题,而是hash函数出了问题,那么一定要进行转换了。
布谷鸟函数:两个hash 函数,与双重hash区别在于,这里是用第一个hash函数的值来确定第二个hash函数的参数,相当于f(g(x))。
发表于 2020-12-20 13:44:28
回复(0)
0
vdskfvsld
1、构造一个好的哈希函数;2、确定解决冲突的方法
发表于 2020-12-19 22:35:12
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
哈希
上传者:
zsw3
难度:
2条回答
0收藏
3018浏览
热门推荐
相关试题
明明的随机数
数组
评论
(3692)
来自
华为研发工程师编程题
5.下列判断正确的是( )
资料分析
言语理解与表达
资料分析
评论
(1)
已知a
40
=...
京东
职能
2019
财务
保险
评论
(1)
《拳皇97》最后BOSS是谁?
游戏常识
评论
(1)
《魔兽世界》中,下列不属于玩家可以...
游戏常识
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题