📄 lru.h
字号:
#include <iostream.h>
#include <stdlib.h>
#include "Seqlist.h"
SeqList seq;
const int MaxLRUSize=3;
int mzs2=0;
char y[3];
class LRU
{
private:
Datatype data[MaxLRUSize];
int rear;
public:
LRU(void){rear=0;count=0;};
~LRU(){};
void LRUInsert(const Datatype & item); //入队列
void LRUDelete(int x); //出队列
void Getitem();
char temp;
int count;
};
void LRU::Getitem()
{
int i;
i=0;
for(i=0;i<3;i++)
{
temp=data[i];
cout<<temp<<endl;
}
cout<<"****************"<<endl;
}
void LRU::LRUInsert(const Datatype & item)
{
int i;
int b;
int j;
int x=0;
char temp5;
////////////////////////////////////////////////////////////////////
/* if(seq.size==0)
{
b=seq.size;
seq.Insert(item,0);
data[0]=item;
count++;
}
*/
//////////////////////////////////////////////////////////////////
if(seq.size<3)
{
int z=0;
for(i=0;i<3;i++)
{
if(seq.data[i]==item)
{
cout<<"该内存"<<item<<"号页面已被调用"<<endl;
z++;
b=i;
}
}
/****************************************************************/
if(z==0)
{
cout<<"该内存页面不存在!"<<endl;
j=seq.size;
seq.Insert(item,j);
data[count]=item;
count++;
}
/*************************************************************/
else if(z!=0)
{
j=seq.size;
temp5=seq.data[b];
for(i=0;i<j;i++)
{
seq.data[i]=seq.data[i+1];
}
seq.data[seq.size-1]=temp5;
mzs2++;
}
}
//////////////////////////////////////////////////////////////////////
else if(seq.size==3)
{
int a=0;
for(i=0;i<3;i++)
{
if(seq.data[i]==item)
{
a++;
b=i;
cout<<"该内存"<<item<<"号页面已被调用"<<endl;
}
}
if(a==0)
{
cout<<"该内存页面不存在!"<<endl;
seq.Insert(item,2);
for(i=0;i<3;i++)
{
if(data[i]==seq.temp2) data[i]=item;
}
}
else if(a!=0)
{
temp5=seq.data[b];
for(i=b;i<MaxListSize;i++)
{
seq.data[i]=seq.data[i+1];
}
seq.data[MaxListSize-1]=temp5;
mzs2++;
}
}
}
///////////////////////////////////////////////////////////
void LRU::LRUDelete(int x)
{
char temp3;
temp3=data[x];
count--;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -