您的位置:首页 > 其它

链式队列

2015-07-23 16:44 323 查看
#include <iostream>
using namespace std;
struct  squeue
{
int data;
squeue *next;
};
struct link
{
squeue* front;
squeue *rear;
};
void initqueue(link *S)        /*设定头节点,不存储数据*/
{
squeue *sq;
sq=new squeue;
S->front=S->rear=sq;
sq->next=NULL;
}
int isempty(link *S)
{
if(S->rear==S->front)
return 1;
return 0;
}
int enqueue(link *S,int e)
{
squeue *sq;
sq=new squeue;
sq->data=e;
sq->next=NULL;
S->rear->next=sq;
S->rear=sq;
}
int ouqueue(link *S,int &e)
{
if(isempty(S))
return 0;
else
{
squeue* p=S->front->next;
e=p->data;
S->front->next=p->next;
}
}
int main()
{
link q;
initqueue(&q);
int i,e;
for(i=0;i<5;i++)
enqueue(&q,i);
for(i=0;i<5;i++)
{
ouqueue(&q,e);
cout<<e<<' ';
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: