问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

栈和队列的应用

发布网友 发布时间:2022-04-20 04:51

我来回答

1个回答

热心网友 时间:2022-07-13 00:36

楼主你好
采用循环队列实现你想要的功能(c 语言):
#include<stdio.h>
#include<stdlib.h>
#define MAX 100

typedef struct queue
{
int data[MAX];
int front,rear;
}Sq;

void Initial_Queue(Sq * &q)//初始化队列
{
q=(Sq *)malloc(sizeof(Sq));
q->front=q->rear=0;
}

void In_Queue(Sq * &q,int e)//入队
{
if((q->rear+1)%MAX == q->front)//队满 就终止入队
return;
q->rear=(q->rear+1)%MAX;
q->data[q->rear]=e;
}

void Out_Queue(Sq * &q,int &e)//出队
{
if(q->front == q->rear)//队空 就终止出队
return;
q->front=(q->front+1)%MAX;
e=q->data[q->front];
}

void Print(Sq *q)//打印
{
int i=(q->front + 1)%MAX;
for(;i<=q->rear;i++)//从队首遍历到队尾
printf("%d\n",q->data[i]);
}

void Verse(Sq * &q)//逆置
{
int i=(q->front+1)%MAX,j=q->rear;
while(i<=j)//采用二分法进行逆置
{
int temp=q->data[i];
q->data[i]=q->data[j];
q->data[j]=temp;
i++;
j--;
}
}

int main()
{
Sq *q;
int e;

Initial_Queue(q);//先初始化队列
printf("输入入队序列(空格间隔 回车结束):\n");
do{
scanf("%d",&e);
In_Queue(q,e);//入队
}while(getchar()!='\n');

printf("\n入队序列为:\n");
Print(q);//打印入队序列
Verse(q);//逆置
printf("\n逆置序列为:\n");
Print(q);//打印逆置序列
return 0;
}

希望能帮助你哈
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
格力晶弘冰箱好吗,质量怎么样?和美的冰箱、海尔冰箱哪个好?2024年精选... ...我不是故意的,是我真的喝醉了,觉得对不起老公,怎么办,他还不知道... CAD打开图纸,出现“向程序发送命令时出现问题”,怎么办? 美致1/14 2838高速越野攀爬车-尊贵蓝-遥控大脚车 绵阳周边旅游景点大全之匡山佛爷洞 元气骑士 元气骑士2022邪王的迷阵世界怎么开? 元气骑士邪王模式一共几关 元气骑士邪王模式关卡数量一览 我玩笑傲江湖人物怎么是黑的.求高手解答 ,下面是电脑配置 加拿大马鹿繁殖 大家了解过笑傲江湖页游黑木崖工具么? C++数据结构 栈和队列的实现和应用 数据结构问题栈与队列的基本操作 四则运算用队列代替栈是否可行?怎么实现?如果不行,... 2.(1)用两个栈实现一个队列.用两个队列实现一个栈。 栈与队列的实现(java) 1.利用队列的基本操作实现栈的逆置 2.利用队列的基... 手机桌面怎么设置什么什么时间 求助高手 关于数据结构栈与队列的实现 时间日期怎么设置显示在手机桌面? 从时间复杂度和空间复杂度的两个方面同时分析一下... 手机桌面的时间怎么设置 用队列和栈实现元素的逆值 利用队列的基本操作,实现栈的逆置,写一算法 怎样用两个队列实现一个栈的功能 如何用数组实现队列和栈 c语言实现队列和栈的方法 如何用一个栈实现队列,如何用一个队列实现栈 Java:如何用两个队列实现栈 如何用队列实现栈 打印机的连接线插在电脑哪里? 怎样用2个栈实现队列(java) 栈和队列数据结构的特点,什么情况下用到栈,什么情... 小米9手机黑屏,按键无反应,充电无反应,放两天,... 线切割是干什么的? 怎么学线切割? 如何正确的安全操作线切割机及故障处理? 线切割机的操作规程 线切割机床的操作规程 线切割机床都有哪些安全操作规程? 如何使用数控线切割机床 线切割机床的操作加工有什么技巧分析? 线切割机床的操作步骤 线切割机的安全操作规程是什么? 线切割如何绕丝图解 线切割机床操作要注意哪些细节 电火花线切割的操作步骤和注意事项 越详细越好 慢走丝线切割机都有哪些安全规范操作事项? 请问,电脑与打印机怎样插线?有几处?拜托帮忙? 打印机的线该插主机的哪个位置 评剧《并非是儿臣以小犯上》的词?