C语言实现循环队列
创作时间:
作者:
@小白创作中心
C语言实现循环队列
引用
CSDN
1.
https://m.blog.csdn.net/weixin_41542504/article/details/138303063
循环队列是一种特殊的队列数据结构,其特点是队尾和队头可以相互覆盖,从而实现存储空间的循环利用。本文将通过C语言代码实现一个简单的循环队列,并演示其基本操作。
循环队列的C语言实现
#include <stdio.h>
#include <stdlib.h>
#define MAX_SIZE 6
typedef unsigned char uint8;
typedef unsigned int uint32;
typedef unsigned short WORD;
int queue[MAX_SIZE];
int head = 0;
int tail = 0;
// 入队操作
void enqueue(int element) {
if ((tail + 1) % MAX_SIZE == head) {
queue[tail] = element;
tail = (tail + 1) % MAX_SIZE;
head = (head + 1) % MAX_SIZE;
}
else
{
queue[tail] = element;
tail = (tail + 1) % MAX_SIZE;
}
return;
}
// 出队操作
int dequeue() {
if (head == tail) {
printf("队列为空\n");
return -1;
}
int result = queue[head];
head = (head + 1) % MAX_SIZE;
return result;
}
// 打印队列
void printQueue() {
int num = 0;
int y = head;
num = ((tail-head)+MAX_SIZE)%MAX_SIZE;
if(num == 0x00)
{
printf("队列为空\n");
}
else
{
for(int i = 0; i< num; i++)
{
printf("%d ",queue[y]);
y = (y + 1) % MAX_SIZE;
}
printf("\n");
}
}
int main() {
printQueue();
// 入队操作
enqueue(1);
enqueue(2);
enqueue(3);
enqueue(4);
enqueue(5);
printQueue(); // 输出: 1 2 3 4 5
// 出队操作
printf("出队元素: %d\n", dequeue());
printf("出队元素: %d\n", dequeue());
printQueue(); // 输出: 3 4 5
// 再次入队
enqueue(6);
enqueue(7);
enqueue(8);
enqueue(9);
printQueue(); // 输出: 5 6 7 8 9
return 0;
}
验证结果
以下是代码运行的验证结果:
通过上述代码和运行结果,我们可以看到循环队列的基本操作(入队、出队)以及队列元素的打印功能都得到了正确实现。循环队列通过取模运算实现了队尾和队头的循环覆盖,从而有效地利用了存储空间。
热门推荐
什么是跨境电商运营?新手如何做好跨境电商运营,手把手教学。
干燥、炎症还是玫瑰痤疮?一文读懂鼻子两侧发红真相!
百万医疗险理赔需要什么材料
文玩核桃怎么挑选,从以下4个方面做选择
AI技术助力新闻事件总结:提升撰写效率与内容质量
深圳个人缴纳社保几号扣款
伺服电机的电子齿轮比
毛周角化症需要治疗吗
白血病分几种类型哪个最严重
春晚公益广告:亲情暖人间,烟火幸福年
领导当面冷淡背后表扬,这背后的心理学原理你懂吗?
盘点2024年乐山文旅的八个“高光时刻”
地平类降压药联用沙坦,或是联用洛尔,哪个方案更好?
摩托车拉缸的常见原因是什么?这种问题如何进行有效处理?
摩托车拉缸故障的原因有哪些?如何有效预防和解决摩托车拉缸问题?
匈奴的婚姻习俗:父妻子继与种姓维系
无主之地2敌人等级是否可提升全面解析与攻略推荐
股权转让锁定期:概念、时长与年限详解
英语学习:高兴的英语表达知多少?
共赏共鉴桂味美食盛宴 展示广西餐饮文化魅力
肠炎的症状及饮食注意事项
所有人都易感!且会重复感染!警惕:诺如病毒进入高峰期
如何有效放弃继承房产及办理房产继承公证
茄红素的功效与食用指南:从天然食物到保健食品的全面解析
天津适合种植哪种竹子
冥想是睡覺嗎?深入探討冥想與睡眠的關系
从 FC、NFC 到 HPP 果汁,它们有什么区别?
获取美国绿卡的完整申请流程与步骤概览
心脏超声检查费用详解:影响因素与注意事项
AH溢价持续走低!知名机构:“是时候实施‘A计划’”!