zl程序教程

您现在的位置是:首页 >  后端

当前栏目

实现lru 缓存详解编程语言

缓存编程语言 实现 详解 LRU
2023-06-13 09:20:29 时间

思路:用map+链表实现,map用来提高查询速度,链表用来存放元素。链表头放入最新的元素,表尾为最老元素。访问cache命中,或者cache满写入时都需要对链表内容和map进行调整。

JDK里面有一个LinkedHashMap就是基于这个思路实现的。


Design and implement a data structure for Least Recently Used (LRU) cache. It should support the following operations: get and set.

get(key)  Get the value (will always be positive) of the key if the key exists in the cache, otherwise return -1.
set(key, value)  Set or insert the value if the key is not already present. When the cache reached its capacity, it should invalidate the least recently used item before inserting a new item.

Show Tags
 public class LRUCache { 

 static class Node { 

 int key; 

 int value; 


原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/10632.html

cjava