📄 seqqueue.h
字号:
#include <iostream.h>
#include <stdlib.h>
const int MaxQueueSize=3;
int mzs=0;
class SeqQueue
{
private:
Datatype data[MaxQueueSize];
int front;
int rear;
int count;
public:
SeqQueue(void){front=rear=0;count=0;};
~SeqQueue(){};
void QInsert(const Datatype & item); //入队列
Datatype QDelete(void); //出队列
Datatype QFront(void) const; //读队头
int QueueEmpty(void)const
{return front==rear;};
void ClearQueue(void)
{front=rear=0;count=0;}
int GetSize(void)const
{return count;};
void Getitem();
char temp2;
};
void SeqQueue::QInsert(const Datatype& item)
{ int a=0;
int i=0;
for(i=0;i<3;i++)
{
if(item==data[i])
{
a ++;
mzs++;
break;
}
}
if(a!=0)
{
cout<<"已有该"<<item<<"号"<<"页面被调用!"<<endl;
}
else
{
cout<<"该页不存在内存中!"<<endl;
if(count==MaxQueueSize)
{
//cerr<<"队列已满,删除一元素!"<<endl;
QDelete();
data[rear]=item;
rear=(rear+1)%MaxQueueSize;
count++;
}
else
{
data[rear]=item;
rear=(rear+1)%MaxQueueSize;
count++;
}
}
}
Datatype SeqQueue::QDelete()
{
Datatype temp;
if(count==0)
{
cerr<<"队列已空"<<endl;
exit(1);
}
temp=data[front];
front=(front+1)%MaxQueueSize;
count--;
return temp;
}
Datatype SeqQueue::QFront(void)const
{
if(count==0)
{
cerr<<"队列已空"<<endl;
exit(1);
}
return data[front];
}
void SeqQueue::Getitem()
{
int i;
i=0;
for(i=0;i<3;i++)
{
temp2=data[i];
cout<<temp2<<endl;
}
cout<<"****************"<<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -