棧的操作練習(陣列模擬)

2021-10-10 03:10:01 字數 1105 閱讀 5148

用陣列來模擬棧

private

int maxsize;

//棧的大小

private

int[

] stack;

//陣列,陣列模擬棧,資料放在該陣列

private

int top =-1

;//表示棧頂,初始化-1

//初始化棧

public

arraystack

(int maxsize)

判斷棧為空的操作就是判斷棧頂是否為-1(前面初始化的棧頂就是為-1)

//棧空

public

boolean

isempty()

判斷棧是否滿就是比較棧頂和棧最大容量的關係

//棧滿

入棧就是棧底不動,將元素壓入棧中,棧頂向上移

//入棧

//出棧,返回棧頂的資料

public

intpop()

return stack[top--];

}

棧的遍歷是從棧頂開始向棧底進行遍歷的

//遍歷棧,從棧頂開始顯示資料

public

void

list()

for(

int i = top; i >=

0; i--

)}

陣列模擬棧

在資料結構中棧是一種線性結構也是有序列表,棧的特點就是 filo 先進後出 棧是限制線性表中元素的增加和刪除只能在一端進行的特殊線性表,變化的一端為棧頂 top 固定的一端棧底 bottom 在學習棧時我們可以把它想象成乙個桶,依次放入東西,在取東西時只能從上面依次取出,不可能直接取出下面的東西。棧...

陣列模擬棧

棧的結構相當於生活中常見的一端封閉,一端開頭的容器,如下圖 底部封死後,只能通過上邊的埠來訪問東西,即先放入的後取出。棧就是這樣一種結構。棧 是一種線性資料結構,並且棧中的元素只能先入後出,並且最早進入的元素存放的位置叫棧底 封閉端 最後進入的元素存放的位置叫棧頂 開口端 可以通過陣列或者鍊錶來實現...

雞蛋棧(陣列模擬棧)

繼佇列之後,我們又來學習一種新的資料結構 棧。將佇列的頭部封閉後,就構成了棧這種資料結構,原來佇列頭部就是棧底,原來佇列的尾部就是棧頂。棧與佇列的不同就在於棧的底端是封閉的。所以,棧的插入和刪除操作只能在棧的一端進行,即棧頂。棧的插入操作稱為入棧,刪除操作稱為出棧。底 頂 底 頂 第二行輸入乙個數n...