#include
#include
#define max 10
typedef
struct sqstack
sqstack;
//初始化棧
void
initstack
(sqstack *s)
//判斷棧是否為空
intstackempty
(sqstack *s)
//進棧
intpush
(sqstack *s,
int e)
s->data[
++s->top]
=e;return1;
}//出棧
intpop
(sqstack *s,
int*e)
*e=s->data[s->top--];
return1;
}//列印棧元素
void
printstack
(sqstack *s)
s->top = topp;
}int
main()
;//賦值陣列
s.top =4;
//棧頂指標,及指出元素所在的位置,這邊元素最後所在的位置就是4,就是陣列的索引位置;
printstack
(&s)
;printf
("\n資料進棧後的資料:\n");
push
(&s,6)
;//進棧;將6加入棧中;
printstack
(&s)
;pop
(&s,
&a);
//出棧;
printf
("\n出棧元素是:%d\n"
,a);
printf
("\n出棧後棧中的資料:\n");
printstack
(&s)
;return0;
}
資料結構 棧的入棧 出棧序列
輸入兩個整數序列,第乙個序列表示棧的壓入順序,請判斷第二個序列是否可能為該棧的彈出順序。假設壓入棧的所有數字均不相等 例如序列1,2,3,4,5是某棧的壓入順序,序列4,5,3,2,1是該壓棧序列對應的乙個彈出序列,但4,3,5,1,2就不可能是該壓棧序列的彈出序列。思路 每次將入棧序列乙個元素入棧...
資料結構 棧 順序棧和鏈棧
順序棧 基於陣列的順序棧 include include include typedef enum status status typedef int elemtype typedef struct sqstack sqstack 函式宣告 基於陣列的順序棧 status initstack sqs...
資料結構遍歷順序棧 資料結構 順序棧的實現
資料結構 順序棧的實現 1 快速開始 棧是一種遵循元素後進 push 先出 pop 規則的線性表,即最後加入的元素最先出來,它的實現可以用陣列或者鍊錶。它的特點如下 先出,先入後出。除了頭尾節點之外,每乙個元素有乙個前驅,有乙個後繼。2 實現棧 我們已經說過了,棧是一種線性表,故其底層是基於陣列或者...