风萧兮易水寒 2022-07-04 03:10 采纳率: 0%
浏览 8

LFU算法是否会有这个问题

LFU是不是会产生这个问题,缓存中目前所有数据使用次数都是5次以上,并且现在缓存容量就只够插入一条新数据,新数据插入的使用次数是1的话, 那岂不是后面再插入数据,都是会淘汰掉上一次插入数据吗,那岂不是会导致新添加的缓存永远无法使用?

  • 写回答

1条回答 默认 最新

  • 空蒙风_宇 2022-07-05 10:07
    关注

    LFU 算法是根据数据访问的频率来选择被淘汰数据的,访问次数和访问频率不能完全等同。访问频率是指在一定时间内的访问次数,也就是说,在计算访问频率时,我们不仅需要记录访问次数,还要记录这些访问是在多长时间内执行的。否则,如果只记录访问次数的话,就缺少了时间维度的信息,进而就无法按照频率来淘汰数据了。
    假设数据 A 在 15 分钟内访问了 15 次,数据 B 在 5 分钟内访问了 10 次。如果只是按访问次数来统计的话,数据 A 的访问次数大于数据 B,所以淘汰数据时会优先淘汰数据 B。不过,如果按照访问频率来统计的话,数据 A 的访问频率是 1 分钟访问 1 次,而数据 B 的访问频率是 1 分钟访问 2 次,所以按访问频率淘汰数据的话,数据 A 应该被淘汰掉。

    评论

报告相同问题?

问题事件

  • 创建了问题 7月4日

悬赏问题

  • ¥15 曙光1620-g30服务器安装硬盘后 看不到硬盘
  • ¥15 抖音直播广场scheme
  • ¥15 为什么我明明有这个文件调试器还显示错误?
  • ¥15 软件工程用例图的建立(相关搜索:软件工程用例图|画图)
  • ¥15 如何在arcgis中导出拓扑关系表
  • ¥15 处理数据集文本挖掘代码
  • ¥15 matlab2017
  • ¥15 在vxWorks下TCP/IP编程,总是connect()报错,连接服务器失败: errno = 0x41
  • ¥15 AnolisOs7.9如何安装 Qt_5.14.2的运行库
  • ¥20 求:怎么实现qt与pcie通信