设计LRU

2025/04/08

一、背景

二、原理

局部性原理

三、实现

三个操作

  1. 查找 get 当某个元素被访问到,会把它移动到链表的表头
  2. 插入 put 存在结点,更新 不存在,插入到表头。如果空间不足,还需要淘汰掉末尾的结点

单链表实现

双链表实现

双向链表+哈希表

双向链表:最近使用的放在链表的前端,反之则是在链表的后端。

LinkedHashMap实现