当前位置: 首页> 教育> 大学 > 推广普通话ppt_网络运营者开展经营和服务活动必须遵守法律行政法规_ip切换工具_谷歌浏览器下载app

推广普通话ppt_网络运营者开展经营和服务活动必须遵守法律行政法规_ip切换工具_谷歌浏览器下载app

时间:2025/7/12 6:07:52来源:https://blog.csdn.net/qq_50709355/article/details/147288356 浏览次数:0次
推广普通话ppt_网络运营者开展经营和服务活动必须遵守法律行政法规_ip切换工具_谷歌浏览器下载app
package LRU缓存;import java.util.Arrays;
import java.util.HashMap;//建立一个双向队列
class MyQueueNode{int key;int value;MyQueueNode pre;MyQueueNode next;public MyQueueNode(int key,int value){this.key = key;this.value=value;}
}
class MyQueue{MyQueueNode head;MyQueueNode tail;public MyQueue(){head=new MyQueueNode(-1,-1);tail=new MyQueueNode(-1,-1);head.next=tail;tail.pre=head;}
}
//最近最少使用
public class LRUCache {int capacity;MyQueue myQueue;HashMap<Integer, MyQueueNode> hashMap;public LRUCache(int capacity) {this.capacity=capacity;myQueue=new MyQueue();hashMap = new HashMap<>();}public int get(int key) {if (!hashMap.containsKey(key)){return -1;}MyQueueNode node = hashMap.get(key);//已经使用了要将这个节点插入至队列的末尾removeNode(node);insertIntoTail(node);return node.value;}//更换至末尾public void insertIntoTail(MyQueueNode node) {node.pre=myQueue.tail.pre;myQueue.tail.pre.next=node;node.next=myQueue.tail;myQueue.tail.pre=node;}public void removeNode(MyQueueNode node){node.next.pre=node.pre;node.pre.next=node.next;}public void put(int key, int value) {if (get(key)!=-1){//存在hashMap.get(key).value=value;}else{//超过容量 移除头节点if (hashMap.size()>=capacity){MyQueueNode node = myQueue.head.next;hashMap.remove(node.key);removeNode(myQueue.head.next);}//新增节点MyQueueNode newNode = new MyQueueNode(key,value);hashMap.put(key,newNode);insertIntoTail(newNode);}}
}
关键字:推广普通话ppt_网络运营者开展经营和服务活动必须遵守法律行政法规_ip切换工具_谷歌浏览器下载app

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: