这个问题涉及基于哈希表中链接的新方法的冲突。
有2个哈希函数:第一个函数h1(x) = x mod m1
使用此函数,所有项都被散列到主哈希表。
在主哈希表的每个索引中,有一个内部哈希表,它使用函数2对键进行哈希:h2(x) = x mod m2
和(m1!=m2)
当主表发生碰撞时(这意味着h1(x)= x%m1 = y%m1 = h1(y))我们转到第二个散列函数h2并计算h2(x)和h2(y)我们将每个放在内部哈希表中的相应索引中。让我们说h1(x)= x%5和h2(x)= x%3例如,如果我们插入7和12,我们将得到h1(7)= 2和h1(12)= 2这意味着两者都将在索引中2在主哈希表中。那么我们计算两者的h2(h2(7)= 1和h2(12)= 0)这意味着我们将7放在索引1中,将12放在内部表中的索引0中(并且由此我们避免碰撞)
这是考试中的问题,关于这个问题的第一部分也是如果这个数字有碰撞 - 0 5 15 17(m1 = 5和m2 = 3)并且显然有0和15有模数对于5和3.第二个问题是关于搜索最坏情况的运行时复杂性?如果我们在主表中发生碰撞时搜索表中的数字2(这意味着h1(x)= x%m1 = y%m1 = h1(y)),那么第三部分是给出5个最坏情况的数字我们转到第二个哈希函数h2并计算h2(x)和h2(y),我们将每个哈希函数放在内部哈希表中的相应索引中。让我们说h1(x)= x%5和h2(x)= x%3例如,如果我们插入7和12,我们将得到h1(7)= 2和h1(12)= 2这意味着两者都将在索引中2在主哈希表中。那么我们计算两者的h2(h2(7)= 1和h2(12)= 0)这意味着我们将7放在索引1中,将12放在内部表中的索引0中(并且由此我们避免碰撞)
这是考试中的问题,关于这个问题的第一部分也是如果这个数字有碰撞 - 0 5 15 17(m1 = 5和m2 = 3)并且显然有0和15有模数对于5和3.第二个问题是关于搜索最坏情况的运行时复杂性?第三部分是给出5个数字,如果我们在表格中搜索数字2,那就是最坏的情况
问题是什么是搜索最坏情况的运行时复杂性? 以及5个数字的例子,如果我们搜索数字2,可能会导致最坏的情况。
我认为复杂性是o(1)并且我使用了这5个数字 7 12 17 22 42
这样做是否正确?有人可以帮忙吗?