栈的入栈顺序和出栈顺序的各种可能?
举一个例子吧。
入栈顺序:a、b、c、d 出栈顺序可以是:d、c、b、a;a、b、c、d;b、a、c、d很多啦, 但要把栈想像成一个没盖子的纸箱,取出东西时只能从最上层取,放进东西也只能放在最上层,所以栈是一个“后进先出”或“先进后出”的顺序存储结构。举一个例子吧。入栈顺序:a、b、c、d 出栈顺序可以是:d、c、b、a;a、b、c、d;b、a、c、d很多啦, 但要把栈想像成一个没盖子的纸箱,取出东西时只能从最上层取,放进东西也只能放在最上层,所以栈是一个“后进先出”或“先进后出”的顺序存储结构。
栈的顺序存储空间怎么表示?
顺序栈,即栈的顺序存储结构是利用一组地址连续的存储单元依次存放自栈底到栈顶的数据元素,同时附设指针top指示栈顶元素在顺序栈中的位置。通常的习惯做法以top=0表示空栈。一般来说,在初始化设空栈时不应限定栈的最大容量。
一个较合理的做法:先为栈分配一个基本容量,然后在应用过程中,当栈的空间不足在进行扩展。空栈时的表示为S.top == S.base。
请问出栈顺序有几种?
4个元素的全排列共有24种,栈要求符合后进先出,按此衡量排除后即得: 1234√,1243√,1324√,1342√,1423×,1432√,2134√,2143√,2314√ ,2341√, 2413×,2431√,3124×,3142×,3214√,3241√,3412×,3421√,4123×,4132×, 4213×,4231×,4312×,4321√。 14种可能,10种不可能。

