发布网友 发布时间:2023-07-12 08:42
共1个回答
热心网友 时间:2024-12-01 15:06
还好没放弃,终于让我研究出来了
我写一下做这道题的步骤和方法,这道题一般是应用题
计算出(9,01,23,14,55,20,84,27)mod 7的结果(取余结果)
一个一个填入
00 01 02 03 04 05 06 07 08 09(表长10)
14 01 9 23 84 27 55 20 空 空
其中有几个关键字有冲突,解决方法一定要读懂题目的要求
Hi=(H(key)+di) MOD 10(di=1方,2方,3方,…)
做不出来的原因就是这个没仔细看,di是正数(平方!!平方是正数!着重解释)
举例说两个,84取余7是0(冲突了),进行Hi=(H(key)+di) MOD 10(di=1方,2方,3方,…)=(0+1)mod10=1(冲突了),进行二次(0+4)mod 10=4,04位置空放入
举例27,27的难度是超出了表长,这怎么办呢?27取余7是6(冲突了),进行Hi=(H(key)+di) MOD 10(di=1方,2方,3方,…)=(6+1)mod10=7(冲突了),进行二次(6+4)mod 10=0(冲突了),进行三次(6+3方)mod 10=6+9=15mod10=5,05位置空放入.
写下来所有的位置,最后一步求成功的机率,成功=元素查找次数/元素个数
00 01 02 03 04 05 06 07 08 09(表长10)
14 01 9 23 84 27 55 20 空 空
1 1 1 2 3 4 1 2 (查找+1,因为你要找到他)
成功=ASL=(1+1+1+2+3+4+1+2)/8=1.875(分数也可以)
本题是考研真题,题目一定出得对!答案也一定对!防止评论误人子弟 ——修改于2023.1