在使用开放寻址实现自定义哈希表时,我发现对于我的应用程序,如果我将一行已填充的槽中的探测元素与第一个探测位置中的元素交换,将有助于提高性能。(优化表以更快地生成经常访问的元素)
这个优化有名字吗?

最佳答案

您的问题与list update problem字段中的online-competitive algorithms非常相似。
您使用的解决方案称为MTF (move to front)。众所周知,这种解决方案具有两种竞争力,这意味着它最多只能比预先知道未来的假设对手糟糕两倍。
注意,您可以做得比bit algorithm稍好一点,它需要另一位+随机操作,但具有7-4的竞争力。

关于algorithm - 此哈希表优化的名称是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39213266/

10-14 14:09
查看更多