LRU Cache数据结构简介

Posted walkinginthesun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LRU Cache数据结构简介相关的知识,希望对你有一定的参考价值。

参考:

LRU的典型实现是hash map + doubly linked list, 双向链表用于存储数据结点,并且它是按照结点最近被使用的时间来存储的。 如果一个结点被访问了, 我们有理由相信它在接下来的一段时间被访问的概率要大于其它结点。于是, 我们把它放到双向链表的头部。当我们往双向链表里插入一个结点, 我们也有可能很快就会使用到它,同样把它插入到头部。
如果没有哈希表,我们要访问某个结点,就需要顺序地一个个找, 时间复杂度是O(n)。使用哈希表可以让我们在O(1)的时间找到想要访问的结点, 或者返回未找到.


以上是关于LRU Cache数据结构简介的主要内容,如果未能解决你的问题,请参考以下文章

redisLRU缓存

lru_cache分析

最近最少使用算法----LRU Cache

最近最少使用算法----LRU Cache

最近最少使用算法----LRU Cache

LRU cache