队列
来源:互联网 发布:12月份php好找工作吗 编辑:程序博客网 时间:2024/05/18 15:09
循环队列
#include <stdio.h>#include <stdlib.h>#define QUEUE_TYPE inttypedef struct QUEUE{ QUEUE_TYPE *head; //pointer start int front; //head int rear; //tail int size; //the real is [0 ~ size-1]}Queue;int create_queue(Queue *s, size_t size){ if ((s->head = (QUEUE_TYPE *)malloc(size * sizeof(QUEUE_TYPE))) == NULL) return -1; //failed s->front = 0; s->rear = 0; s->size = size; return 0;}void destroy_queue(Queue *s){ free(s->head);}int is_empty(Queue *s){ if (s->front == s->rear) return 0; //empty else return -1; //not empty}int is_full(Queue *s){ if (((s->rear +1) % s->size) == s->front) return 0; //full else return -1; //not full}/* * front for out * rear for in */int insert_queue(Queue *s, QUEUE_TYPE value){ if (is_full(s) == 0) return -1; //failed s->head[s->rear] = value; s->rear = (s->rear + 1) % s->size; return 0;}int delete_queue(Queue *s, QUEUE_TYPE *value){ if (is_empty(s) == 0) return -1; //failed *value = s->head[s->front]; s->front = (s->front + 1) % s->size; return 0; //success}int first_queue(Queue *s, QUEUE_TYPE *value){ if (is_empty(s) == 0) return -1; //empty queue, failed *value = s->head[s->front]; return 0; //success}
0 0
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 队列
- 九度OJ;题目1147:Jugs
- 在同声传译这件事上,Skype是如何击败99.9%的地球人的?
- 看了这个才发现jQuery源代码不是那么晦涩
- Lua基础学习二——表和函数
- sgu172:eXam(二分图染色)
- 队列
- java web中过滤器的配置
- IT从业者自我修炼之道
- Android 碎屏效果 (Crack Screen,击碎屏幕)
- myeclipse从数据库反射生成实体类和映射文件
- 学习Maven记录
- spring整合memcached注意事项-poolname
- LA 3644 X-PIosives
- web前端知识点整理