LeetCode LRU Cache(最近最少使用缓存)

问题:设计一个最近最少使用缓存。支持get和put操作

1、如果get(key)中,key在缓存中不存在,返回-1

2、put(key,value),如果key在缓存中不存在,则插入。当缓存到达容量时,需要删除最近最小使用项

要求时间复杂度为O(1)

思路:使用LinkedHashMap,实现类继承它。设置accessOrder为true,当get时,调整对应项位置,同时重写removeEldestEntry,当容器大小大于容量时作删除

具体代码参考:

https://github.com/wuli2496/OJ/tree/master/LeetCode/LRU%20Cache

发布了1365 篇原创文章 · 获赞 71 · 访问量 140万+

猜你喜欢

转载自blog.csdn.net/wuli2496/article/details/105313132
今日推荐