- 这是李春葆的数据结构中的第三章栈结构的习题。
- 总共14种
- 首先栈是一个先入后出的结构。
- 假设D先出栈,只有可能是ABCD进栈,DCBA出
- 假设C先出栈,就是ABC进栈,C出,然后考虑AB是否出和D是否进的情况
- 若A出B不出,那么A出后D就要进,则为CADB
- 若A出B出,那么B出后D再进,则为CABD
- 若D先进再考虑A和B的话则只有一种情况,CDBA
- 以此类推
- 答案:
abcd abdc acbd acdb
adcb bacd badc bcad
bcda bdca cbad cbda
cdba dcba