package stack;
/**
* 棧
* 棧的特徵 先進後出,後進先出
* @author 羊頭怪
*
*/
public class MyStack {
/**
* 棧的特徵 先進後出,後進先出
*/
//棧的底層是數組
private int[] array;
//數組下標
private int top;
/**
* 無參構造 初始化數組
* 默認數組長度是10
*/
public MyStack() {
array = new int[10];
top=-1;
}
/**
* 有參構造初始化數組
*/
public MyStack(int size) {
array = new int[size];
top=-1;
}
/**
* 判斷棧中是否有元素
* false有元素 不是空
* true沒有元素 是空
*
*/
public boolean isEmpty() {
return top==-1;
}
/**
* 判斷棧中元素是否滿了
* false 不滿
* true 滿
*/
public boolean isfull() {
return top==array.length-1;
}
/**
* 清空棧
*/
public void clear() {
top=-1;
}
/**
* 向棧壓進數
* 進棧
* @param value
*/
public void push(int value) {
array[++top]=value;
}
/**
* 訪問棧頂元素
*/
public int peek() {
return array[top];
}
/**
* 移除元素
* 出棧
* @param index
*/
public int pop() {
return array[top--];
}
public void find(int index) {
}
public void toMyStack() {
System.out.print("["+" ");
for(int i=0;i<=top;i++) {
System.out.print(array[i]+" ");
}
System.out.println("]");
}
}
java數據結構2棧
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.