java实现时间复杂度O(1)的LFU缓存

LFU缓存通常须要排序来解决命中率问题(上一篇的LFU实现也是利用了Collections.sort),致使时间复杂度较高。下面采用一种算法让LFU的时间复杂度成为O(1)。java 数据设计:node 1,一个双向链表来保存命中数(下面代码的NodeCount<K> countHead,结构中包含2的map)。算法 2,命中数相同的放在一个双向链表的map中(这里用的是LinkedHashMap
相关文章
相关标签/搜索