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;
}
验证结果
以下是代码运行的验证结果:
通过上述代码和运行结果,我们可以看到循环队列的基本操作(入队、出队)以及队列元素的打印功能都得到了正确实现。循环队列通过取模运算实现了队尾和队头的循环覆盖,从而有效地利用了存储空间。
热门推荐
乘坐高铁列车出行的N个理由,你﹢1吗?
适合小孩子去的旅游景点,懒爸懒妈,带娃出行游玩指南
刘亦菲《玫瑰的故事》带火“智性穿搭”,职场女性如何穿出高级感?
刘亦菲再创演艺生涯里程碑:年度演员+金鹰女神双料加持
刘亦菲新剧《小城焕日》开机,悬疑剧迷的年度期待!
刘亦菲演绎李清照:当现代演员遇见宋代才女
2025护考倒计时,高效备考攻略出炉!
2025山东护考:门诊高频考点大揭秘
密题库助力护考高分通关
嵩山少林寺:建筑奥秘与文化传承
大石佛寺的园林设计,美到爆表!
杭州世纪田园:冬日金色麦田里的城市秘境
2024年电力市场发展趋势与展望
电费违约金是如何计算的
《锦绣安宁》“最爽正室”张瑶:小众女星的跌宕“逆袭路”
沙发背景墙挂画的一般高度是多少
解码亲子关系:寻找孩子成长的最佳教育方法
冬季必备:红辣椒&猕猴桃增强免疫力
朝阳区打卡:中国科学技术馆&奥林匹克公园
朝阳区三大宝藏景点,让你悠闲时光不无聊
朝阳区摄影指南:捕捉最美瞬间
冬季流感高发,这些预防措施你知道吗?
天津市疾控中心发布校园流感防控指南
K603次列车带你畅游五台山
DIY精油蜡烛-轻松5步制作指南
临沧一日游:自然景观、历史文化与民族风情的完美融合
十大坚果的功效+食用禁忌,过年之前要了解清楚,千万别买错了!
过期食品与中毒风险,你真的了解吗?
详细教程:如何连接笔记本电脑到无线WiFi网络并解决常见问题
Wi-Fi背后的工作原理与技术发展历程介绍