本文主要是介绍[算法导论] 146. LRU缓存机制,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
0.题目
实现本题的两种操作,需要用到一个哈希表和一个双向链表。在面试中,面试官一般会期望读者能够自己实现一个简单的双向链表,而不是使用语言自带的、封装好的数据结构。在 Python 语言中,有一种结合了哈希表与双向链表的数据结构 OrderedDict,只需要短短的几行代码就可以完成本题。在 Java 语言中,同样有类似的数据结构 LinkedHashMap。这些做法都不会符合面试官的要求,因此下面只给出使用封装好的数据结构实现的代码,而不多做任何阐述。
# 调用python封装好的OrderedDict.
class LRUCache(collections.OrderedDict):def __init__(self, capacity: int):super().__init__self.cap
这篇关于[算法导论] 146. LRU缓存机制的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!