-
Stack
(計算機科學中是一種數據結構)
鎖定
- 中文名
- 棧
- 外文名
- Stack
- 性 質
- 計算機科學中是一種數據結構
Stack進棧算法
①若TOP≥n時,則給出溢出信息,作出錯處理(進棧前首先檢查棧是否已滿,滿則溢出;不滿則作②);
②置TOP=TOP+1(棧指針加1,指向進棧地址);
③S(TOP)=X,結束(X為新進棧的元素);
Stack退棧算法
①若TOP≤0,則給出下溢信息,作出錯處理(退棧前先檢查是否已為空棧, 空則下溢;不空則作②);
②X=S(TOP),(退棧後的元素賦給X);
③TOP=TOP-1,結束(棧指針減1,指向棧頂)。
棧可以用來在函數調用的時候存儲斷點,做遞歸時要用到棧!
Stack英語
1.a warehouse; a storehouse
3.a shed; a pen
棧的演示算法
主要算法代碼(c++實現):
public void push(int val){
s[++tos]=val;
}
public void pop(){
if(!isEmpty()) tos--;
}
public int top(){
return s[tos];
}
public boolean isEmpty(){
return (tos==-1)? true:false;
}
Stack適配器
包含以下幾個成員函數:
pop() 移除棧頂元素(不會返回棧頂元素的值)
push() 在棧頂增加元素
size() 返回棧中元素數目