首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >实现MRU算法

实现MRU算法
EN

Stack Overflow用户
提问于 2013-04-18 12:50:32
回答 1查看 513关注 0票数 0

我想实现一个简单的MRU缓存:我将使用一个队列:

代码语言:javascript
复制
get(Object):
  • 检查队列是否包含对象
    • 是的:从队列中删除它,并在开头插入它。
    • 否:将请求转发到系统,获取元素并在开头插入

这个方法可以吗?我已经看到很多实现都使用Maps,但我不明白为什么。为什么我需要一个键,值对缓存?!

EN

回答 1

Stack Overflow用户

发布于 2013-04-18 12:58:23

因为使用映射检查集合是否包含元素要快得多(理论上是O(1)),所以对于队列,您必须遍历所有现有元素并进行比较,即O(sizeOfQueue)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16083460

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档