失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > LRU(Least Recently Used)页面置换算法

LRU(Least Recently Used)页面置换算法

时间:2022-06-03 01:49:00

相关推荐

LRU(Least Recently Used)页面置换算法

LRU(LeastRecently Used)页面置换算法——最近最久未使用

数据结构:ArrayDeque双端队列

import java.util.ArrayDeque;import java.util.Scanner;public class LRULearn {public static void main(String[] args) {String Serial = new Scanner(System.in).next();LRU lru = new LRU(8);lru.VisitPage1(Serial);System.out.println(lru.getQueue());}}class LRU{private int Cache;private ArrayDeque<Character> queue=new ArrayDeque<>();public ArrayDeque<Character> getQueue() {return queue;}public LRU(int cache) {Cache = cache;}/*public void VisitPage(String Serial){for(int i=0;i<Serial.length();i++){if(i<Cache){queue.addFirst(Serial.charAt(i));}if(queue.contains(Serial.charAt(i))){queue.remove(Serial.charAt(i));queue.addFirst(Serial.charAt(i));}else{queue.removeLast();queue.addFirst(Serial.charAt(i));}}//System.out.println(queue);}*/public void VisitPage1(String Serial){for(int i=0;i<Serial.length();i++){//先判断满不满if (!isFull()){if (!queue.contains(Serial.charAt(i))){queue.addFirst(Serial.charAt(i));}else {queue.remove(Serial.charAt(i));queue.addFirst(Serial.charAt(i));}}else {if (!queue.contains(Serial.charAt(i))){queue.removeLast();queue.addFirst(Serial.charAt(i));}else {queue.remove(Serial.charAt(i));queue.addFirst(Serial.charAt(i));}}}}public boolean isFull(){return queue.size()==Cache;}}

如果觉得《LRU(Least Recently Used)页面置换算法》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。