搜索:LFU

共命中 2 条(服务端检索)
LeetCode 460. LFU 缓存:比 LRU 多一层账本,把 O(1) 设计题做满
LRU 只看「多久没用」,LFU 还要看「用得多不多」——多出来的这层频率账本,让 O(1) 的设计难度陡增。本文从朴素方案的瓶颈推到「频率桶 + 双向链表」的双字典结构,逐段讲透驱逐与晋升的每一步,最后用本地测试跑通边界用例,顺带看看 Redis 是怎么把这套思想塞进 24 个比特的。
算法题解 精选 · 原创 · 今天 阅读 2·访客 2
LeetCode 146. LRU 缓存:哈希表 + 双向链表的经典组合拳
LRU 缓存要求 get 与 put 都做到 O(1),单靠哈希表或单靠链表都做不到。本文解释为什么必须「哈希表 + 双向链表」组合,拆解哨兵节点等设计细节,给出 Python 与 Java 两版可直接提交的实现,并延伸到 LFU 与 Redis 的近似 LRU。
算法题解 精选 · 原创 · 10-6 阅读 141·访客 140