算法笔记7.2 队列的应用
队列先进先出 ,每次只能取到队首元素,只能在队尾插入元素。
两个指针,front和rear
front队首元素位置的上一个位置
rear队尾元素的位置
自己简单实现一个int型队列
#include<iostream>
using namespace std;
struct Queue
{
int front;
int rear;
int q[1000];
//初始化
Queue(){
front=rear=-1;
}
void clear(){
front=rear=-1;
}
int size(){
return rear-front;
}
bool empty(){
return front==rear;
}
void push(int x){
q[++rear]=x;
}
void pop(){
front++;//注意是++ 最简单的队列
}
int Front(){
return q[front+1];
}
int Rear(){
return q[rear];
}
};
void empty(Queue q){
if(q.empty()) cout<<"空\n";
else cout<<"非空\n";
}
int main(){
Queue q;
for(int i=0;i<5;i++){
q.push(i+1);
}
cout<<"size:"<<q.size()<<endl;
cout<<"首:"<<q.Front()<<endl;
cout<<"尾:"<<q.Rear()<<endl;
empty(q);
q.clear();
cout<<"\nclear后:\n";
cout<<"size:"<<q.size()<<endl;
empty(q);
return 0;
}
版权声明
本文仅代表作者观点,不代表博信信息网立场。
上一篇:CSS篇七——(1) 下一篇:linux-Linux基础与进阶-命令和文件操作