144 - 146 LRU缓存机制
题目
解答
有序字典
class LRUCache:
def __init__(self, capacity: int):
self.capacity = capacity
self.data = collections.OrderedDict()
def get(self, key: int) -> int:
if key not in self.data:
return -1
self.data.move_to_end(key)
return self.data[key]
def put(self, key: int, value: int) -> None:
if key in self.data:
self.data.move_to_end(key)
self.data[key] = value
if len(self.data) > self.capacity:
self.data.popitem(last=False)哈希表+双向链表

Last updated