2010-08-20 38 views
2

我想制作一个只允许插入和查找的散列表。一旦表中有东西出现,它就会处于良好状态,除非您制作新的哈希表并重新填充内容。是否有更适合于此的算法/数据结构(比如说B树/ RB树/ LLRB树)?更好的做法是 - 更快地插入和查找时间,或者更容易分割,或者更小的开销。谢谢用于插入和查找的最佳散列表只有

回答

0

如果您知道(大致)每个项目将被查找多少次(并且这些频率不是统一的),那么您可以使用Knuth算法(free pdf)来找到一个最优化的树,以便更频繁地访问靠近顶部的物品(所以访问速度更快)。此树中的每个节点都将是散列码(用于导航树)和指向实际项目的指针。我不知道这种算法的任何实现,但...