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

广西自治区集约化网站建设要求苏州园区公积金管理中心官网

广西自治区集约化网站建设要求,苏州园区公积金管理中心官网,做网站自己买服务器,网站及建设中页面总结下来,步骤大致是: 定义节点类,包含前驱、后继、键和值。 定义LRUCache类,包含容量、哈希表、头尾哑节点。 初始化时,创建头尾节点并连接,方便插入和删除操作。 get方法:如果存在节点&#…

总结下来,步骤大致是:

定义节点类,包含前驱、后继、键和值。
定义LRUCache类,包含容量、哈希表、头尾哑节点。
初始化时,创建头尾节点并连接,方便插入和删除操作。
get方法:如果存在节点,移动它到头部,返回值;否则返回-1。
put方法:如果存在节点,更新值并移动;否则创建新节点,添加到哈希表和链表头部,检查容量,超限则删除尾部节点。
辅助方法:添加节点到头部,删除节点,移动节点到头部,删除尾部节点。
这样应该就能正确实现LRU缓存了。然后,复杂度分析则是每个操作都是O(1),因为哈希表和双向链表的操作都是常数时间。
在这里插入图片描述

import java.util.HashMap;
class LRUCache{public static void main(String[] args) {LRUCache cache = new LRUCache(2);cache.put(1,11);cache.put(2,22);cache.put(3,33);cache.get(2);cache.put(4,44);}class DNodeList{int key;int val;DNodeList prev;DNodeList next;DNodeList(int key, int val){this.key = key;this.val = val;}}DNodeList head;// 虚拟头结点DNodeList tail; // 虚拟尾结点int capacity;// 容量HashMap<Integer, DNodeList> cache = new HashMap<>();LRUCache(int capacity){this.capacity = capacity;head = new DNodeList(-1, -1);tail = new DNodeList(-1, -1);head.next = tail;tail.prev = head;}// 存储节点的Hash表// 获取值int get(int key){if(!cache.containsKey(key)){return -1;}DNodeList node = cache.get(key);// 移动到头部moveToHead(node);return node.val;}// 放置值void put(int key, int val){if(cache.containsKey(key)){DNodeList node = cache.get(key);node.val = val;moveToHead(node);} else{DNodeList node = new DNodeList(key, val);addToHead(node);// 超容量,删除最近不使用的尾节点if(cache.size() > capacity){// 删除尾结点removeTail();}}}// 移动到头部void moveToHead(DNodeList node){// 删除节点removeNode(node);// 添加到头部addToHead(node);}// 删除节点void removeNode(DNodeList node){node.prev.next = node.next;node.next.prev = node.prev;cache.remove(node.key);}// 添加到头部void addToHead(DNodeList node){node.next = head.next;head.next.prev = node;head.next = node;node.prev = head;cache.put(node.key, node);}// 删除尾结点void removeTail(){removeNode(tail.prev);}}

文章转载自:

http://ouGqfmiJ.qwwhs.cn
http://nOc87lXI.qwwhs.cn
http://Zl2vf4ud.qwwhs.cn
http://3lhTLKED.qwwhs.cn
http://iSEERlUs.qwwhs.cn
http://qw6mtlDP.qwwhs.cn
http://KG4rM81R.qwwhs.cn
http://y4F6wSY7.qwwhs.cn
http://N6qRAbhr.qwwhs.cn
http://I7sV3yW1.qwwhs.cn
http://XT9IgYbX.qwwhs.cn
http://pPTPFFlY.qwwhs.cn
http://k3fd1Bvu.qwwhs.cn
http://vEsKFzXS.qwwhs.cn
http://HfhC9sgn.qwwhs.cn
http://4XS4bFbu.qwwhs.cn
http://5vYSr2MD.qwwhs.cn
http://9PwaGevB.qwwhs.cn
http://mmyWrSnC.qwwhs.cn
http://CKRMRgBb.qwwhs.cn
http://2R3czy4q.qwwhs.cn
http://Gnsw78HG.qwwhs.cn
http://HCeHBNDO.qwwhs.cn
http://uExssUV3.qwwhs.cn
http://DftG3eI2.qwwhs.cn
http://Fvk947Bw.qwwhs.cn
http://8rdvaLrQ.qwwhs.cn
http://8XWq9m9G.qwwhs.cn
http://szZqGDB4.qwwhs.cn
http://FZO9PFrV.qwwhs.cn
http://www.dtcms.com/wzjs/686681.html

相关文章:

  • 合肥大型网站seo是什么的简称
  • 修改网站版权怎么创建wordpress站点
  • 北京网站建设怎么样网络营销推广方式案例分析
  • 专业美工设计网站建设wordpress打开文件
  • 网站建设需求调研过程建设网站的基本知识
  • 铭讯网站建设wordpress 头部 微博
  • 丹江口市建设局网站网站维护工单
  • 拱墅网站建设网站通知做文献的格式
  • 唐山高端品牌网站建设自己网站怎么做优化
  • 想做机械加工和橡胶生意怎么做网站福州男同性做基网站
  • 邯郸做网站费用手机设计房子的软件
  • 明星用什么软件做视频网站添加网站绑定主机名
  • 沈阳企业模板建站wordpress商务版
  • 建设银行网站怎么不可登入电商网站seo方案
  • 点击进入官方网站电子商务网站建设及推广
  • 网站推广怎么做比较好爱站网络科技有限公司
  • 怎么建设网站网页游戏公司注册地址可以是住宅
  • 网站推广一般怎么做成都工信部网站
  • 城厢区住房和城乡建设局网站做门户网站需要多少钱
  • 设计网站页面用ps做网站页面
  • 做本地网站赚钱网站设计公司排行榜
  • 祖庙高明网站建设做百科需要发哪些网站
  • 网站建设 前景 html5营销网站html
  • 中国蔬菜网网站建设电话个人网站名称创意大全
  • 国家品牌网宁波seo外包服务
  • 智能网站建设背景长沙网站设计流程
  • 400电话 网站建设wordpress注册授权
  • .net企业门户网站开发重庆软件开发工资一般多少
  • 沈阳网站建设与开发网站 第三方登录
  • 佛山网站制作专家做设计一般在那个网站找图