博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据结构---队列C语言实现
阅读量:6438 次
发布时间:2019-06-23

本文共 1162 字,大约阅读时间需要 3 分钟。

#include 
#include
//队列大小#define SIZE 1024static int queue[SIZE] = {0};static int head , tail ; //0 1int Is_Empty(void){ //判断队列是否为空,如果头是尾,就证明为空 return head == tail ; }//0 1int Is_Full(void){ //判断队列是否已经满了 return (head+1)%SIZE == tail ; }//入队int enqueue(int value){ if(Is_Full()) { return 1 ; } queue[head] = value ; head = (head + 1) % SIZE ; return 0 ; }//出队int dequeue(int *value){ if(Is_Empty()) return 1 ; *value = queue[tail] ; tail = (tail + 1) % SIZE ; return 0 ; }int main(void){ int i ; int temp ; int buffer[5] = {1,2,3,4,5}; printf("入队前:\n"); for(i = 0 ; i < 5 ; i++) { printf("queue[%d]:%d\n",i,queue[i]); } for(i = 0 ; i < 5 ; i++) { enqueue(buffer[i]) ; } printf("入队后: \n"); for(i = 0 ; i < 5 ; i++) { printf("queue[%d]:%d\n",i,queue[i]); } printf("出队后: \n"); while(1) { if(dequeue(&temp)) break ; printf("%d\n",temp); } getchar();}

运行结果:

入队前:

queue[0]:0

queue[1]:0

queue[2]:0

queue[3]:0

queue[4]:0

入队后:

queue[0]:1

queue[1]:2

queue[2]:3

queue[3]:4

queue[4]:5

出队后:

1

2

3

4

5

转载地址:http://kbuwo.baihongyu.com/

你可能感兴趣的文章
MySQL5.5编译方式安装实战
查看>>
细谈Ehcache页面缓存的使用
查看>>
GridView如何设置View的初始样式
查看>>
Placeholder in IE8 and older
查看>>
SQL语句字符串处理大全
查看>>
环境变量的作用,为什么要设置环境变量?
查看>>
从尾到头打印单链表
查看>>
getopt
查看>>
我的第一个IT产品:PublicLecture@HK【My First IT Product】
查看>>
优秀员工与普通员工
查看>>
CCNP学习笔记15-RSTP
查看>>
DELL服务器iDRAC相关设置
查看>>
JVM学习笔记(一)------基本结构
查看>>
$@等特定shell变量的含义
查看>>
我的友情链接
查看>>
(超详细版)Linux下Hadoop2.7.1集群环境的搭建(3台为例)
查看>>
策略模式、上下文与内部类的思考
查看>>
关于getCurrentUrl的获取问题
查看>>
2014年工作中遇到的20个问题:120-140
查看>>
解决win10不能安装NVIDIA的RTX 20系列的显卡驱动问题
查看>>