棧的特點即先進後出,採用陣列模擬棧,實現棧的這一特性主要是靠定義乙個指標(索引).
指標的初始位置指向的是-1
以下給出**:
packagecom.ebiz.stack;
/***
@author
yhj * @create 2019-07-20 14:20
* 陣列模擬棧 */
public
class
arraystack
//驗證棧滿
public
boolean
isfull()
//驗證為空
public
boolean
isempty()
//入棧
public
void push(int
value)
top++;
arr[top]=value;
}//出棧
public
intpop()
int value=arr[top];
top--;
return
value;
}//遍歷棧
public
void
list()
while (true
) system.out.printf("出站元素為%d%n",arr[top]);
top--;}}
}
陣列模擬棧,給出了pop,push,list幾個簡單方法,下面給出測試類,
packagecom.ebiz.stack;
/***
@author
yhj * @create 2019-07-20 15:11 */
public
class
test
//獲取棧頂
system.out.println(stack.pop());
system.out.println(stack.pop());
//遍歷棧
stack.list();
}}
陣列模擬棧資料結構
棧又名堆疊,它是一種運算受限的線性表。其限制是僅允許在表的一端進行插入和刪除運算。這一端被稱為棧頂,相對地,把另一端稱為棧底。向乙個棧插入新元素又稱作進棧 入棧或壓棧,它是把新元素放到棧頂元素的上面,使之成為新的棧頂元素。2 先進後出 後進先出 3 棧具有記憶功能 4 棧頂通常用 top 表示,棧底...
資料結構示例之陣列模擬多棧實現
以下為 使用陣列實現多個連續棧 的示例 1.用c語言實現的版本 include include define memory size 100 記憶體大小 define max stacks 11 棧的個數最大值加1 typedef char element element memory memory...
資料結構之陣列實現棧結構
include include int top int s 返回棧頂位置 int stack empty int s 判斷棧是否為空 int stack full int s 判斷棧是否已滿 void push int s,int x int pop int s return x int main ...