LRU是什么?如何实现?

        LRU是一种算法,叫做最近最少使用算法,它可以被用于实现缓存淘汰策略,比如redis中就有一个缓存淘汰策略叫做最近最少使用策略,它会淘汰掉数据集中最近最少用到的一部分数据。

        LRU的底层实现是一个双向链表,当它内部保存的某一个数据被用到时,会将这个数据往链表的头部移动,而将没有使用到的数据往链表的尾部移动;当有一个新的被使用的数据添加到这个链表中时,也要添加在链表的头部,当此链表的存储容量被占满时,会启动淘汰策略,淘汰掉链表尾部的一部分数据。

你可能感兴趣的:(算法,java)