答:栈的特点是后进先出,队列的特点是先进先出。所以,用两个栈A和B模拟一个队列时,A作输入栈,逐个元素压栈,以此模拟队列元素的入队。当需要出队时,将栈A退栈并逐个压入栈B中,A中最先入栈的元素,在B中处于栈顶。B退栈,相当于队列的出队,实现了先进先出。显然,只有栈B为空且A也为空,才算是队列空。
解本题的基本思想是:先将顺序队列q中所有元素出队,并依次进入顺序栈s中,然后出栈,再依次入队。设队列中的元素为a1,a2, ... ,an,出队并进栈的序列为a1,a2, ... ,an,出栈并入队的序列为an,an-1, ... ,a1,可见顺序队列q中所有元素已逆置了。顺序队列的类型定义为: #define MAX 100 typedef struct ...
栈的基本功能就是先入后出,基本功能的话一个栈就可以实现了。但是如果需要另外实现获取栈中最小值以及最大值,则需要另外两个栈,一个栈存储栈中最小值,另一个栈存储最大值,而且每次出现push以及pop操作的时候都需要将最小值以及最大值进行更新。因为当出现push以及pop操作的时候,栈中的最小值以及最大值可能会...
1.设计一个判别表达式中括号是否配对的算法,采用( )数据结构最佳。 A、顺序表 B、链表 C、栈 D、队列 点击查看答案&解析手机看题 你可能感兴趣的试题 问答题 有下列行为之一的,对有关责任人员,给予记过或者记大过处分;情节较重的,给予降级或者撤职处分;情节严重的,给予开除处分:(1)涂改、伪造档案的;(2)擅自...
将队列中的元素顺序压栈,由于队列先进先出,而栈是后进先出,先进栈的就在栈底,而后进的就在栈顶,然后等到队列所有元素进入栈中,即队列为空时,再将栈中的元素顺序弹入队列,这样原先队列中最后进入栈的就在栈顶,而弹出栈后,进入队列就在队列头部,就可以实现队列的元素逆置。
百度试题 结果1 题目设计一个判别表达式左、右括号是否配对出现的算法,采用( )数据结构最佳。 A. 线性表的顺序存储结构 B. 栈 C. 队列 D. 线性表的链式存储结构 相关知识点: 试题来源: 解析 B. 栈 反馈 收藏
百度试题 结果1 题目设计一个判别表达式中左右括号是否配对的算法,采用( ) A. 顺序表 B. 栈 C. 队列 D. 链表 相关知识点: 试题来源: 解析 B 反馈 收藏
设计一个判别表达式中左右括号是否配对出现的算法,采用( )数据结构最佳。A、顺序表B、队列C、链表D、栈 你可能感兴趣的试题 多项选择题 关于储蓄和投资的关系,如下哪些说法是正确的(多选) A.在市场机制的作用下,通过利率的调节,封闭经济下的总储蓄最终会自动转化为计划总投资...
也即元素后进先出。所以可以用栈来实现,也即满足三个操作的数据结构:从后面添加元素,从后面移除元素...
② 设计的栈类型可以使用现成的栈结构 PHP 当中没有栈和队列的概念(5.3 以后增加了 SplStack 类),但是可以用数组来模拟栈和队列,用到的方法有 array_push 和 array_pop array_push:向第一个参数的数组尾部添加一个或多个元素(入栈),然后返回新数组的长度 ...