Advertisement

Leetcode LRU缓存

阅读量:
在这里插入图片描述

注意的点:

1、该问题的核心在于构建一个支持排序功能的数据结构(由于O(1)的时间复杂度特性,这通常与字典结构相关),因此可以选择使用collections模块中预置的OrderDict,或者通过结合字典与双端链表的方式自行实现该功能。
2、OrderedDict包含以下两种方法:
.move_to_end(key, last=False):用于将指定键对应的元素向前移动一位,若将last参数设为True,则会将该元素移动至末尾位置。
.popitem(last=True):用于移除并返回位于末尾位置的元素,当last参数为True时执行此操作。

解法一:python的OrderDict

复制代码
    from collections import OrderedDict
    
    class LRUCache:
    def __init__(self, capacity: int):
        self.capacity = capacity
        self.cache = OrderedDict()

全部评论 (0)

还没有任何评论哟~