lrucacheleetcode-leetcode-lfu-cache:我的leetcodeLFU缓存问题的解决方案

时间:2024-07-19 16:57:46
【文件属性】:

文件名称:lrucacheleetcode-leetcode-lfu-cache:我的leetcodeLFU缓存问题的解决方案

文件大小:2KB

文件格式:ZIP

更新时间:2024-07-19 16:57:46

系统开源

lru缓存leetcode 问题描述 设计和实现最不常用 (LFU) 缓存的数据结构。 实现 LFUCache 类: LFUCache(int capacity)用数据结构的容量初始化对象。 int get(int key)如果键存在于缓存中,则获取int get(int key)的值。 否则,返回 -1。 void put(int key, int value)如果存在则更新键的值,如果不存在则插入键。 当缓存达到其容量时,它应该在插入新项目之前使最不常用的键无效并删除。 对于这个问题,当有平局(即两个或多个键的频率相同)时,最近最少使用的键将失效。 为了确定最不经常使用的密钥,缓存中为每个密钥维护一个使用计数器。 使用计数器最小的密钥是使用频率最低的密钥。 当一个键第一次插入缓存时,它的使用计数器被设置为 1(由于 put 操作)。 缓存中某个键的使用计数器会增加,或者对其调用 get 或 put 操作。 示例 1: 输入 [“LFUCache”,“放置”,“放置”,“获取”,“放置”,“获取”,“获取”,“放置”,“获取”,“获取”,“获取”] [[2], [1, 1], [2,


【文件预览】:
leetcode-lfu-cache-main
----lfu.cc(1KB)
----README.md(4KB)

网友评论