字符a、b、c、d依次通过一个栈,按出栈的先后次序组成字符串,至多可以组成多少个不同的字符串?并分别写出它们。

字符a、b、c、d依次通过一个栈,按出栈的先后次序组成字符串,至多可以组成多少个不同的字符串?并分别写出它们。


【正确答案】:

14个。

DCBA CBAD CBDA CDBA BACD BADC BCAD BCDA BDCA ABCD ABDC ACBD ACDB ADCB。


【题目解析】:

栈的修改原则是后进先出。

d先出的情况有1个:dcba(dcba的顺序只能是d先出,再c出,再b出,后a出)

c先出的情况有3个:cbad cbda cdba (cba的顺序只能是c先出,再b出,后a出)

b先出的情况有5个:bacd badc bcad bcda bdca (ba的顺序只能是先b出,再a出)

a先出的情况有5个:abcd abdc acbd acdb adcb(a出后,若d先出,只能是再c出,后b出)


Top