Chinaunix首页 | 论坛 | 博客
  • 博客访问: 114516
  • 博文数量: 23
  • 博客积分: 975
  • 博客等级: 准尉
  • 技术积分: 262
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-19 00:54
文章分类
文章存档

2011年(2)

2010年(3)

2008年(18)

我的朋友

分类:

2008-07-19 02:18:47


#define MAXQSIZE 100

typedef struct
{
 int *base;
 int front;
 int rear;
}sqqueue;

int initqueue(sqqueue &q)//初始化队列

{
 q.base=(int *)malloc(sizeof(int)*MAXQSIZE);
 if(!q.base) exit(-2);//储存分配失败

 q.front=q.rear=0;
 return 1;
}

int enqueue(sqqueue &q,int e)//入队

{
 if((q.rear+1)%MAXQSIZE==q.front) return 0;//队列满

 q.base[q.rear]=e;
 q.rear=(q.rear+1)%MAXQSIZE;
 return 1;
}

int dequeue(sqqueue &q,int &e)//出队

{
 if(q.front==q.rear) return 0;
 e=q.base[q.front];
 q.front=(q.front+1)%MAXQSIZE;
 return 1;
}

int getqueue(sqqueue &q,int &e)//取队头

{
 if(q.front==q.rear) return 0;
 e=q.base[q.front];
 return 1;
}

阅读(870) | 评论(0) | 转发(0) |
0

上一篇:二叉树遍历

下一篇:堆栈算法

给主人留下些什么吧!~~