import java.util.LinkedHashMap;
import java.util.Map;//模拟Lur 算法
public class redisLUR<K,V>  extends LinkedHashMap<K,V>  {private final int CACHE_SIZE ;public redisLUR(int cacaheSize) {// true 这个代表了linkhashmap 按访问顺序排序,最近访问的放头部,最老的放尾部super((int)Math.ceil(cacaheSize / 0.75) + 1, 0.75f, true);CACHE_SIZE = cacaheSize;}//当map 当map数据量大于指定缓存个数时,自动删除最老数据@Overrideprotected boolean removeEldestEntry(Map.Entry<K, V> eldest) {return size() > CACHE_SIZE;}public static void main(String[] args) {redisLUR<String,Integer> redisLUR = new redisLUR<String,Integer>(5);redisLUR.put("A",1);redisLUR.put("B",2);redisLUR.put("C",3);redisLUR.put("D",4);redisLUR.put("E",5);System.out.println(redisLUR.toString()); //{A=1, B=2, C=3, D=4, E=5}redisLUR.put("F",6);System.out.println(redisLUR.toString()); //{B=2, C=3, D=4, E=5, F=6}}
}

以后面试到说要简单手写个lru ,就试试这样吧

简单模拟Lur 算法相关推荐

  1. java cas 实现_Java CAS算法简介及简单模拟CAS算法

    CAS(Compare-And-Swap:比较并替换) CAS是英文单词CompareAndSwap的缩写,意思就是:比较并替换.简单来说就是比较之后再看情况是否需要替换.CAS是乐观锁思想的一种实现 ...

  2. java实现简单的LUR算法

    public class LRUCache<k,v> extends LinkedHashMap<k,v> {private final int CACHE_SIZE;publ ...

  3. 编写一个函数,简单模拟微信发红包算法。

    编写一个函数,简单模拟微信发红包算法. 函数有两个参数:一个参数表示红包总金额,默认值为100:另一个参数表示红包数量,默认值为15. 所有随机产生的红包金额(保留两位小数)存放在一个列表(同时作为函 ...

  4. 胡凡 《算法笔记》 上机实战训练指南 3.1 简单模拟

    胡凡 <算法笔记> 上机实战训练指南 3.1 持续更新中 , 菜鸡的刷题笔记- 大学到现在了还没咋好好刷过题,该push自己了- 文章目录 胡凡 <算法笔记> 上机实战训练指南 ...

  5. NYOJ 题目77 开灯问题(简单模拟)

    开灯问题 时间限制:3000 ms  |            内存限制:65535 KB 难度:1 描述 有n盏灯,编号为1~n,第1个人把所有灯打开,第2个人按下所有编号为2 的倍数的开关(这些灯 ...

  6. FZU - 2202 犯罪嫌疑人(逻辑思维+简单模拟)

    题目链接:点击查看 题目大意:给出n和m,代表有n个人,每个人说一句话,指认一个人是无辜还是罪犯,总共有m个人说了真话,问每个人说话的真实性 题目分析:一拿到这个题目我是懵逼的..因为n给到了1e5, ...

  7. 操作系统学习之用C语言模拟CLOCK算法

    前言 CLOCK算法,顾名思义,时钟算法,是一个在FIFO和LRU的折衷算法,很符合我们的中庸之道,来学一学它折衷了哪些部分. Buddy算法:操作系统学习之用C语言模拟伙伴(Buddy)算法 FIF ...

  8. 操作系统学习之用C语言模拟LRU算法

    前言 LRU算比较经典,而且考的也比较多,LRU算法全称Least Recently Used,译为最近最少使用.用C模拟一下吧. Buddy算法:操作系统学习之用C语言模拟伙伴(Buddy)算法 F ...

  9. 银行业务队列简单模拟Java程序设计_PTA 数据结构 银行业务队列简单模拟

    仅供参考,请勿粘贴 设某银行有A.B两个业务窗口,且处理业务的速度不一样,其中A窗口处理速度是B窗口的2倍 -- 即当A窗口每处理完2个顾客时,B窗口处理完1个顾客.给定到达银行的顾客序列,请按业务完 ...

最新文章

  1. Hive SQL 监控系统 - Hive Falcon
  2. 用TensorFlow实现的Mask R-CNN在人体语义分割上的效果
  3. linux下1sa 密码失效,SA口令
  4. jupyter nootbook本地使用指南
  5. 数据源(连接池)开发步骤
  6. 计算机相关专业的自我评价,计算机相关专业的学生自我评价
  7. mockito简单教程
  8. java throw throwable_异常处理:throw,throws和Throwable
  9. 支付宝 java 签名_支付宝APP支付(Java后台生成签名具体步骤)
  10. (十四)单词之各动词讲解
  11. flutter图片聊天泡泡_Flutter 气泡效果合集(全网最全)
  12. 转载:CAN:CAN矩阵、CAN网络、DBC、MDF关系
  13. 想知道吗?CTO 比普通程序员强在哪?
  14. bootstrap~去除input选中时的蓝色边框线
  15. U盘写保护无法格式化
  16. 锂盐锂矿主要标的简议
  17. 简单排序算法时间空间复杂度分析及应用(4)-二分插入排序
  18. select下拉框选择触发事件
  19. TCP的三次握手与四次断开
  20. CrystalReports水晶报表 10_5 下载地址

热门文章

  1. 卸载 windows 2003 自带 .NET Framework (dotnetfx cleanup tool)
  2. STM32滤波电容个数和大小的确定
  3. Vue之点击收藏与取消收藏
  4. 数据仓库架构的技术选型
  5. 玩转X-CTR100 l STM32F4 l PS2无线手柄-4WD智能小车
  6. 不用PS,一键生成熊猫头表情包
  7. 安装apk时提示安装失败,相同包名但是签名不一致
  8. IBUFDS、IBUFGDS和OBUFDS
  9. Xms/Xmx/Xmn/Xss区别
  10. Solr DIH上传索引操作实例