我有一个练习测试问题,询问以下内容:
假设设计散列策略使其以H = 8的初始散列表大小开始。您可以假设仅执行插入(无删除)。每当哈希表超过50%时(当尝试将项目H / 2 + 1添加到大小为H的表时),哈希表大小加倍到2 * H,然后使用H / 2无关密钥插入将前一个哈希表中的H / 2密钥重新分配到大小为2 * H的新表中。用于最初将每个密钥放入哈希表的密钥插入称为必要的密钥插入(这些不是无关)。
问题: 导出总计发生的无关键插入次数的递归关系E(H),直到哈希表大小为H的时间点。解释递归关系中的术语来自何处。 < / p>
我不太确定如何设置这种复发,并希望有人可以帮我解决这个问题。我知道如何解决复发但我发现最难开始设置它。
从我看到的是,当哈希表满50%或更高时,哈希表加倍到2H。我不知道下一步该往哪里去。
如果有人可以帮助我,那就太好了,因为我想在测试中理解这一点。