LRU(最近最少使用)缓存面试常考。用 OrderedDict 几十行就能写对:
get命中就把 key 移到末尾(表示最近用);put超容量就popitem(last=False)扔掉最久没用的;- 加把锁就能线程安全。
完整可运行代码在附件 lru.py,含 if __name__=='__main__' 演示。核心就这几行:
def get(self, k, default=None):
if k not in self.store: return default
self.store.move_to_end(k)
return self.store[k]
拿去当 Redis 本地前置缓存很合适。
楼主 · 2026-09-26 14:31 · 浏览 155
· 编辑于 2026-09-26 14:31

