定义一个栈,合理控制进栈和出栈次序,使abcd依次进栈,而出栈次序分别为bcda和cbad,并输出这些序列

来源:百度知道 编辑:UC知道 时间:2024/05/07 10:33:49

用条件语句呗:
int n=0;
void f(s)
{
push(s);先入栈
if(n){pop();n++;}满足条件则出栈,然后到下一个元素
}
while(stack){pop();i--;}//判断栈是否为空,不为空刚依次出栈
n=3;重新赋初值
void ff(s)
{
push(s);
if(!n){pop();n--;}满足条件则出栈,然后到下一个元素
}
whilewhile(stack){pop();i--;}//判断栈是否为空,不为空刚依次出栈

这只是方法,具体代码还得你自己写啊,呵呵

bcda:
1、ab进栈 b 出栈
2、c进栈 c出栈
3、d 进栈 d 出栈
4、a 出栈
cbad:
1、abc进栈 c 出栈
2、 b出栈
3、 a 出栈
4、 d 进栈d 出栈

栈,FILO机制,只有一种出栈的顺序

FILO,这是栈的特点,根据这个就可以很自然的出入栈顺序了