【发布时间】:2015-02-12 21:03:40
【问题描述】:
目前,我被要求设计一个 O(n log n) 算法,用于将 n 元素插入到具有 n 个槽的哈希表中使用线性探测。
最初,如果散列函数生成的散列值最终为单个,则插入 n 个元素将需要 O(n^2) 时间号码。
因此,我正在考虑在散列任何元素之前通过使用某种类型的数据结构预测它们来防止冲突。
例如:计算每个元素的所有哈希值(即O(n)),搜索可能的冲突,改变冲突键的哈希值,然后进行插入。
我的问题:是否有可能在 O(n log n) 时间内找到解决我问题的数据结构?
非常感谢。
【问题讨论】:
标签: algorithm hash time-complexity