缓存的大小有限,当缓存被用满时,哪些数据应该被清理出去,哪些数据应该被保留?这就需要缓存淘汰策略来决定。常见的策略有三种:先进先出策略 FIFO(First In,First Out)、最少使用策略 LFU(Least Frequently Used)、最近最少使用策略 LRU(Least Recently Used)。
-
先进先出策略 FIFO(First In,First Out)
使用定长队列,队列实现用链表
python 数据结果,deque双端队列,可以无脑使用但原理要知道
from collections import deque class Cache: def __init__(self,l=5): self.Q = deque(maxlen=l) def add(self,x): self.Q