当前位置: 首页 > news >正文

网站建设宣传ppt模板下载技能培训机构

网站建设宣传ppt模板下载,技能培训机构,WordPress作者信息框,网页设计阶段力扣labuladong一刷day52天LRU算法 文章目录 力扣labuladong一刷day52天LRU算法概念一、146. LRU 缓存思路一#xff1a;使用双向链表加map来手动实现。思路二#xff1a;使用LinkedHashMap 概念 LRU的全称为Least Recently Used#xff0c;翻译出来就是最近最少使用的意思…力扣labuladong一刷day52天LRU算法 文章目录 力扣labuladong一刷day52天LRU算法概念一、146. LRU 缓存思路一使用双向链表加map来手动实现。思路二使用LinkedHashMap 概念 LRU的全称为Least Recently Used翻译出来就是最近最少使用的意思它是一种内存淘汰算法当内存不够时将内存中最久没使用的数据清理掉。 LUR算法是内存管理的一种页面置换算法就是用来删除内存中不被使用的数据腾出空间来把常用的数据存进去。 一、146. LRU 缓存 题目链接https://leetcode.cn/problems/lru-cache/ 思路一使用双向链表加map来手动实现。 class Node {public int key, val;public Node next, prev;public Node(int k, int v) {key k;val v;} }class DoubleList{private Node head, tail;private int size;public DoubleList() {head new Node(0, 0);tail new Node(0, 0);head.next tail;tail.prev head;size 0;}void addLast(Node x) {x.next tail;x.prev tail.prev;tail.prev.next x;tail.prev x;size;}void remove(Node x) {x.prev.next x.next;x.next.prev x.prev;size--;}Node removeFirst() {if (head.next tail) {return null;}Node first head.next;remove(first);return first;}int size() {return size;} }class LRUCache{private HashMapInteger, Node map;private DoubleList cache;private int cap;public int get(int key) {if (!map.containsKey(key)) {return -1;}makeRecently(key);return map.get(key).val;}public void put(int key, int value) {if (map.containsKey(key)) {deleteKey(key);addRecently(key, value);return;}if (cap cache.size()) {deleteLastRecently();}addRecently(key, value);}public LRUCache(int capacity) {this.cap capacity;this.map new HashMap();this.cache new DoubleList();}private void makeRecently(int key) {Node node map.get(key);cache.remove(node);cache.addLast(node);}private void addRecently(int key, int value) {Node node new Node(key, value);map.put(key, node);cache.addLast(node);}private void deleteKey(int key) {Node node map.remove(key);cache.remove(node);}private void deleteLastRecently() {Node node cache.removeFirst();map.remove(node.key);}}/*** Your LRUCache object will be instantiated and called as such:* LRUCache obj new LRUCache(capacity);* int param_1 obj.get(key);* obj.put(key,value);*/思路二使用LinkedHashMap put都是从尾部加入要想删除头部可以使用map.keySet().iterator().next();拿到key然后删除。 class LRUCache {LinkedHashMapInteger, Integer map;int cap 0;public LRUCache(int capacity) {map new LinkedHashMap();cap capacity;}public int get(int key) {if (!map.containsKey(key)) {return -1;}Integer val map.remove(key);map.put(key, val);return val;}public void put(int key, int value) {if (map.containsKey(key)) {map.remove(key);map.put(key, value);return;}if (cap map.size()) {Integer first map.keySet().iterator().next();map.remove(first);}map.put(key, value);} }
http://www.yayakq.cn/news/5621/

相关文章:

  • 阿里云 上传wordpress江苏搜索引擎优化
  • 做企业公司网站二手书网站开发
  • 色彩网站设计师公众号开发者权限哪里添加
  • 国外好的网站广州市白云区建设局网站
  • 宝路华手表官方网站沧州手机建站哪家好
  • 怎么做无损mp3下载网站手机wordpress怎么保存图片大小
  • 大连建站价格信息流优化师工作内容
  • 深圳企业网站建设服务商手机百度账号登录个人中心
  • 网站建设与维护aspwordpress添加前台登录
  • 安徽省建设厅网站证书查询wordpress 门户主题
  • 有哪个网站做策划方案的磁力猫搜索引擎入口官网
  • 产品经理兼职做网站报酬wordpress 主题 自定义
  • 网站版权问题岳池做网站电话
  • 企业网站建设和管理网站没收录要怎么做
  • 服装网站项目的设计方案wordpress图文直播插件
  • 建设一个网站选择的服务器有哪些好的做h5的网站
  • 网站后台不能添加内容静态网站有什么用
  • 模板网站如何做seo智能建站系统
  • 软件公司门户网站模板企业静态网站需要备案吗
  • 网站建设 总体思路wordpress带登陆主题
  • 网站建设费用申报做网站 橙色怎么搭配
  • 棋牌游戏网站建设网站的二次开发是什么意思
  • 咸宁住房和城乡规划建设局网站潍坊网站建设wancet
  • 信息技术制作网站首页紫金优化网站制作
  • 网站开发和编程有什么区别wordpress显示用户自定义
  • 什么网站可以做兼职销售windows系统做网站
  • 做彩票网站要多少钱阿里云域名注册官网登录
  • 大型网站技术架构演进与性能优化四川省建十五公司官网
  • 为网站优势知乎怎么申请关键词推广
  • asp图片源码网站公司响应式网站建设报价