单选题若对编号为1,2,3的列车车厢依次通过扳道栈进行调度,不能得到()的序列。A1,2,3B1,3,2C2,1,3D2,3,1E3,1,2F3,2,1

单选题
若对编号为1,2,3的列车车厢依次通过扳道栈进行调度,不能得到()的序列。
A

1,2,3

B

1,3,2

C

2,1,3

D

2,3,1

E

3,1,2

F

3,2,1


参考解析

解析: 暂无解析

相关考题:

若进栈序列为a,b,c,则通过入出栈操作能得到的a,b,c的不同排列个数为()。 A.4B.5C.6D.7

若已知一个栈的进栈序列是1,2,3,,n,其输出序列为p1,p2,p3,?,pn,若p1=n,则pi为()。A.iB.n-iC.n-i+1D.不确定

● 栈的运算特点是后进先出。元素 a、b、c、d 依次入栈,则不能得到的出栈序列是 (41) 。(41)A. a b c dB. c a b dC. d c b aD. b c d a

若push、pop分别表示入栈、出栈操作,初始栈为空且元素1、2、3依次进栈,则经过操作序列push、push、pop、pop、push、pop之后,得到的出栈序列为(29)。A.321B.213C.231D.123

若让元素1,2,3依次进栈,则出栈顺序不可能为()。 A.2,1,3B.3,1,2C.3,2,1

若元素a、b、c、d、e、f依次进栈,允许进栈、出栈操作交替进行,但不允许连续3次出栈,则不可能得到的出栈序列是()。 A.dcebfaB.cbdaefC.bcaefdD.afedcb

对于一个栈,若输入序列依次为{A,B,C},试给出所有可能的输出序列。

若pllsh、pop分别表示入栈、出栈操作,初始栈为空且元素1、2、3依次进栈,则经过操作序列push、push、pop、pop、push、pop之后,得到的出栈序列为 ______。A.321B.213C.231D.123A.B.C.D.

若已知一个栈的进栈序列是1,2,3…n,其输出序列是P1,P2,P3,…PN,若P1=n,则Pi(1 若已知一个栈的进栈序列是1,2,3…n,其输出序列是P1,P2,P3,…PN,若P1=n,则Pi(1A.IB.n-iC.n-i+1D.不确定

—个栈的初始状态为空。现将元素1,2,3,A,B,C依次入栈,然后再依次出栈,则元素出栈的顺序是( )。A.1,2,3,A,B,CB.C,B,A,1,2,3C.C,B,A,3,2,1D.1,2,3,C,B,A

已知栈S 初始为空,用 I 表示入栈、O表示出栈,若入栈序列为a1a2a3a4a5,则通过栈 S 得到出栈序列a2a4a5a3a1的合法操作序列( )。A.IIOIIOIOOOB.IOIOIOIOIOC.IOOIIOIOIOD.IIOOIOIOOO

若元素a、b、c、d、e、f 依次进栈,允许进栈、出栈操作交替进行。但不允许连续三次进行出栈工作,则不可能得到的出栈序列是( )。A. dcebfa B. cbdaef C. bcaefd D. afedcb

试题七(共 15 分)阅读以下说明和C程序,将应填入 (n) 处的字句写在答题纸的对应栏内。【说明】现有 n(n 1000)节火车车厢,顺序编号为 1,2,3,...,n,按编号连续依次从 A方向的铁轨驶入,从 B 方向铁轨驶出,一旦车厢进入车站(Station)就不能再回到 A方向的铁轨上;一旦车厢驶入 B 方向铁轨就不能再回到车站,如图 7-1所示,其中 Station 为栈结构,初始为空且最多能停放 1000 节车厢。下面的 C 程序判断能否从 B 方向驶出预先指定的车厢序列,程序中使用了栈类STACK,关于栈基本操作的函数原型说明如下:void InitStack(STACK *s):初始化栈。void Push(STACK *s,int e): 将一个整数压栈,栈中元素数目增 1。void Pop(STACK *s):栈顶元素出栈,栈中元素数目减 1。int Top(STACK s):返回非空栈的栈顶元素值,栈中元素数目不变。int IsEmpty(STACK s):若是空栈则返回 1,否则返回 0。【C 程序】includestdio.h/*此处为栈类型及其基本操作的定义,省略*/int main( ){STACK station;int state[1000];int n; /*车厢数*/int begin, i, j, maxNo; /*maxNo 为 A端正待入栈的车厢编号*/printf("请输入车厢数: ");scanf("%d",n);printf("请输入需要判断的车厢编号序列(以空格分隔) : ");if (n 1) return -1;for (i = 0; in; i++) /* 读入需要驶出的车厢编号序列,存入数组 state[] */scanf("%d",state[i]);(1) ; /*初始化栈*/maxNo = 1;for(i = 0; i n; ){/*检查输出序列中的每个车厢号 state[i]是否能从栈中获取*/if ( (2) ){/*当栈不为空时*/if (state[i] == Top(station)){ /*栈顶车厢号等于被检查车厢号*/printf("%d ",Top(station));Pop(station); i++;}elseif ( (3) ){printf("error\n");return 1;}else {begin = (4) ;for(j = begin+1; j=state[i]; j++) {Push(station, j);}}}else { /*当栈为空时*/begin = maxNo;for(j = begin; j=state[i]; j++){Push(station, j);}maxNo = (5) ;}}printf("OK");return 0;}

●设push、pop分别表示入栈、出栈操作,若初始栈为空,对于元素序列a b c,则操作序列push、pop、pop、push、push、pop (36)。(36)A.得到出栈序列为abcB.得到出栈序列为bacC.得到出栈序列为bcaD.是非法的操作序列

若三个数字1、2、3的进栈顺序为1,2,3,且进栈和出栈可以穿插进行,写出所有可能的出栈序列.

若元素a、b、c、d、e、f依次进栈,允许进栈、出栈操作交替进行。但不允许连续三次进行出栈工作,则不可能得到的出栈序列是( )。A.dcebtaB.cbdaefC.bcaetdD.afedcb

已知栈S初始为空,用I表示入栈、O表示出栈,若入栈序列为a1a2a3a4a5,则通过栈S得到出栈序列a2a4a5a3a1的合法操作序列(58)。A.IIOIIOIOOOB.IOIOIOIOIOC.IOOIIOIOIOD.IIOOIOIOOO

若5个元素的进栈序列是a、b、c、d、e,利用堆栈操作能否得到出栈序列b、c、a、e、d和d、b、a、c、e?对于不能得到的出栈序列,请说明理由。

若让元素1,2,3依次进栈,则出栈次序1,3,2是不可能出现的情况。

若序列a、b、c、d、e按顺序入栈,假设P表示入栈操作,S表示出栈操作,则操作序列PSPPSPSPSS后得到的输出序列为()

若对编号为1,2,3的列车车厢依次通过扳道栈进行调度,不能得到()的序列。A、1,2,3B、1,3,2C、2,1,3D、2,3,1E、3,1,2F、3,2,1

设元素1,2,3,P,A依次经过一个栈,进栈次序为123PA,在栈的输出序列中,有哪些序列可作为C++程序设计语言的变量名。

设将整数1,2,3,4依次进栈,但只要出栈时栈非空,则可将出栈操作按任何次序夹入其中,请回答下述问题: (1)若入、出栈次序为Push(1),Pop(),Push(2),Push(3),Pop(),Pop(),Push(4),Pop(),则出栈的数字序列为何?(这里Push(i)表示i进栈,Pop()表示出栈) (2)能否得到出栈序列1423和1432?并说明为什么不能得到或者如何得到。 (3)请分析1,2,3,4的24种排列中,哪些序列是可以通过相应的入出栈操作得到的。

问答题设元素1,2,3,P,A依次经过一个栈,进栈次序为123PA,在栈的输出序列中,有哪些序列可作为C++程序设计语言的变量名。

问答题设将整数1,2,3,4依次进栈,但只要出栈时栈非空,则可将出栈操作按任何次序夹入其中,请回答下述问题: (1)若入、出栈次序为Push(1),Pop(),Push(2),Push(3),Pop(),Pop(),Push(4),Pop(),则出栈的数字序列为何?(这里Push(i)表示i进栈,Pop()表示出栈) (2)能否得到出栈序列1423和1432?并说明为什么不能得到或者如何得到。 (3)请分析1,2,3,4的24种排列中,哪些序列是可以通过相应的入出栈操作得到的。

判断题若让元素1,2,3依次进栈,则出栈次序1,3,2是不可能出现的情况。A对B错

问答题若5个元素的进栈序列是a、b、c、d、e,利用堆栈操作能否得到出栈序列b、c、a、e、d和d、b、a、c、e?对于不能得到的出栈序列,请说明理由。