自己實現棧【親測】
阿新 • • 發佈:2019-01-05
-
棧類
public class MyStack { /** * 棧底層是陣列實現 *棧頂top,為-1時,棧為空 */ private long []arr; private int top; public MyStack(){ arr=new long[10]; top=-1; } public MyStack(int maxsize){ arr=new long[maxsize]; top=-1; } /*入棧*/ void push(int value){ arr[++top]=value; } /*出棧*/ long pop(){ return arr[top--]; } /*檢視棧頂元素*/ long top(){ return arr[top]; } /*判斷是否為空*/ boolean isEmpty(){ return top==-1; } /*判斷棧是否滿了*/ boolean isFull(){ return top==arr.length-1; } }
-
測試類
public class Test { public static void main(String[] args) { MyStack ms=new MyStack(4); ms.push(1); ms.push(2); ms.push(3); ms.push(4); System.out.println(ms.isEmpty()); System.out.println(ms.isFull()); System.out.println(ms.top()); ms.pop(); System.out.println(ms.isEmpty()); System.out.println(ms.isFull()); System.out.println(ms.top()); } }
-
測試結果