【发布时间】:2020-05-12 08:14:44
【问题描述】:
我正在实现一个元素缓存(由唯一 ID 表示),其中包含要保留的最大元素数。当我达到最大尺寸时删除最后使用的元素。所以它看起来像一个队列,但具有独特的元素,因为我不想多次添加相同的 id。
但是元素可以多次使用,再次使用时应该回到队列顶部,这样缓存才真正删除最后使用的元素。
我真的不知道该怎么做。我的第一个猜测是使用 std::list,因此手动管理元素的唯一性和“移至顶部”操作。
有没有更聪明的方法来实现这一点?
编辑:我不知道名字,但这或多或少是Least recently used algorithms。
【问题讨论】: