1
39
最近,我使用散列图上的链表实现了一个LRU缓存。
对于所有重要的操作,它都具有O(1)的优势。 插入算法:
|
2
9
|
3
6
为了简单起见,也许您应该考虑使用Boost的多索引映射。如果我们将键与数据分开,我们就支持同一数据上的多组键。 “…使用两个索引:1)按键散列搜索值2)按顺序跟踪最近使用的项(get函数put item as last item in sequence)。如果我们需要从缓存中删除某些项,我们可以从序列开始删除它们。“ 请注意,“项目”操作符允许程序员有效地在同一个多索引容器的不同索引之间移动。 |
5
2
在我们的生产环境中,我们使用一个类似于 Linux kernel linked list . 它的好处在于,您可以根据需要将对象添加到任意多个链接列表中,并且列表操作既快速又简单。 |
danial · 如何在多个字符串的每个位置找到最频繁的字符 2 年前 |
Manny · 如何比较Perl中的字符串? 2 年前 |
Diret · 获取范围内每个数字的子倍数的算法 2 年前 |
Saif · 排序时python如何决定何时调用比较器? 2 年前 |