首页 > 其他 > 详细

C基础--队列的构造

时间:2015-09-26 17:03:57      阅读:182      评论:0      收藏:0      [点我收藏+]
#include <stdio.h>
#include "queue.h"

int main(void)
{
    char *s = "abcd";

    while (*s != \0)
        enqueue(*s++);

    while (!is_empty())
        putchar(dequeue());
    putchar(\n);

    return 0;
}
static int f = 0,r = 0, sz = 512;    //f入队游标, r出队游标, sz队大小
static int queue[512];                //队存储空间

void enqueue(int item)        //环形队列,当数组游标到达sz后,游标变为0
{
    f %= sz;
    queue[f++] = item;
}
int dequeue(void)
{
    r %= sz;
    return queue[r++];
}
int is_empty(void)
{
    return f == r;
}
int is_full(void)
{
    return (f+1)%sz == r;
}
extern void enqueue(int item);
extern int dequeue(void);
extern int is_empty(void);
extern int is_full(void);

 

C基础--队列的构造

原文:http://www.cnblogs.com/zhuyaguang/p/4840850.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!