比如内存里一个页面缓存队列 A B C D E
第一种情况当加入 F 时,淘汰 A
第二种情况当加入 C 时,应该是把 C 放到队尾,也就是 A B D E C
但是又看到另外一种做法,维护的是一个淘汰队列,比如也是 A B C D E
然后当 C 再被访问的时候,直接把 C 删除,变成 A B D E
突然有点晕,这两种做法本质是一样的吗
1
ysc3839 2020-12-15 20:16:07 +08:00 via Android
我觉得不可能一样吧?把 C 的缓存删了,下次访问不就又要重新读取了吗?
|
2
hanxiV2EX 2020-12-15 23:28:27 +08:00 via Android
你可能是看漏了什么,应该是把 C 删除,然后把 C 推到队列尾部
|
3
mxalbert1996 2020-12-16 00:06:13 +08:00 via Android
你看错了吧,把 C 删除难道你永远都不淘汰 C 么?
|
4
zxCoder OP |