首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
考研
请利用两个栈s1和s2来模拟一个队列。已知栈的三个运算定义如下: (1)push(st,X):元素X入st栈: (2)pop(st,X):st栈顶元素出栈,赋给变量X: (3)sempty(st):判st栈是否为空。 那么如
请利用两个栈s1和s2来模拟一个队列。已知栈的三个运算定义如下: (1)push(st,X):元素X入st栈: (2)pop(st,X):st栈顶元素出栈,赋给变量X: (3)sempty(st):判st栈是否为空。 那么如
admin
2019-01-16
68
问题
请利用两个栈s1和s2来模拟一个队列。已知栈的三个运算定义如下:
(1)push(st,X):元素X入st栈:
(2)pop(st,X):st栈顶元素出栈,赋给变量X:
(3)sempty(st):判st栈是否为空。
那么如何利用栈的运算来实现该队列的三个运算:
(1)enqueue:插入一个元素入队列;
(2)dequeue:删除一个元素出队列:
(3)queue—empty:判队列为空。
(请写明算法的思想及必要的注释。)
选项
答案
栈的特点是后进先出,队列的特点是先进先出。所以,用两个栈s1和s2模拟一个队列时,s1作输入栈,逐个元素压栈,以此模拟队列元素的入队。当需要出队时,将栈s1退栈并逐个压入栈s2中,s1中最先入栈的元素,在s2中处于栈顶。s2退栈,相当于队列的出队,实现了先进先出。显然,只有栈s2为空且s1也为空,才算是队列空。 (1)int enqueue(stack S1,elemtp X){ //s1是容量为n的栈,栈中元素类型是elemtp。本算法将x入栈, //若入栈成功返回1,否则返回0 if(topl==n&&!sempty(s2)) //top1是栈s1的栈顶指针,是全局变量 {printf(”栈满”);retum(0);} //s1满s2非空,这时s1不能再入栈 if(topl==n&&sempty(s2)) //若s2为空,先将s1退栈,元素再压栈到s2 {while(!sempty(s1)){pop(s1,x);push(s2,x);} push(sl,x):return(1); //x入栈,实现了队列元素的入队 } (2)void dequeue(stack s2,s1){ //s2是输出栈,本算法将s2栈顶元素退栈,实现队列元素的出队 if(!sempty(s2)) //栈s2不空,则直接出队 {pop(s2,x);printf(”出队元素为”,x);} else //处理s2空栈 if(sempty(s1)){printf(”队列空”);exit(0);} //若输入栈也为空,则判定队空 else //先将栈s1倒入s2中,再作出队操作 { while(!sempty(s1)){pop(sl,x);push(s2,x);} pop(s2,x); //s2退栈相当于队列出队 pfinff(”出队元素”,x); } (3)int queue—empty(){ //本算法判用栈s1和s2模拟的队列是否为空 if(sempty(s1)&&sempty(s2))return(1); //队列空 else return(0): //队列不空 }
解析
转载请注明原文地址:https://kaotiyun.com/show/0YRi777K
本试题收录于:
计算机408题库学硕统考专业分类
0
计算机408
学硕统考专业
相关试题推荐
中国共产党在敌后战场上开创的第一块根据地是()。
真理标准问题大讨论
解放军渡江战役中横渡长江的东西两个攻击点是()。
中国共产党在敌后战场上开创的第一块根据地是()。
分析明治维新成功的原因。
第一次鸦片战争、第二次鸦片战争的时间,分别对应于法国的()时期和()时期。
列宁称马克思、恩格斯是“19世纪人类三个最先进国家中三种主要思潮的继承人和天才的完成者”。这里“三个最先进国家”指的是()。
马克思说:巴黎公社“只不过是在特殊条件下的一个城市起义”。其含义是()。
试编写一个非递归算法,实现求以二叉链表存储的二叉树中q结点的祖先。
设某计算机系统有一块CPU、一台输入设备、一台打印机。现有两个进程同时进入就绪状态,且进程A先得到CPU运行,进程B后运行。进程A的运行轨迹为:计算50ms,打印信息100ms,再计算50ms,打印信息100ms,结束。进程B的运行轨迹为:计算50
随机试题
由展神经支配的肌肉是
关于方差分析,下述正确的是
第三代喹诺酮类药物的抗菌机制是其抑制了细胞的
下列不属于应当给予检察官奖励的情形的是:
森林与水血脉相依,森林作为陆地生态系统的主体和自然界功能最完善的资源库,具有调节气候、涵养水源、保持水土,防风固沙,改良土壤、减少污染等多种功能对保护人类生态环境起着决定性的和不可替代的作用。据专家研究,森林对降雨有着重新分配的作用,25%的降雨量可为植被
从所给的四个选项中,选择最合适的一个填入问号处,使之呈现一定的规律性:
AmanwalksintoaconferenceroomattheWhotelindowntownAustin.Thesetting,sleekandquiet,saysbusiness.Thetraining
一台计算机中的寄存器、快存(Cache)、主存及辅存,其存取速度从高到低的顺序是( )。
要改变窗体上文本框控件的输出内容,应设置的属性是
WeareoneofthelargestbusinesscompaniesinEnglandandhavethevacanciesforyoungpeopleinourcompany.EnquiriesfromG
最新回复
(
0
)