1. 程式人生 > >Java版資料結構之陣列實現棧的操作

Java版資料結構之陣列實現棧的操作

簡介

  • 利用陣列實現棧的操作
public class MyStack {
    private int[] elements;

    public MyStack() {
       elements=new int[0];
    }

    //獲取棧的大小
    public int size(){
        return elements.length;
    }


    //遍歷棧
    public void show(){
        for(int i=0;i<elements.length;i++){
            System.out.print(elements[i]+" ");
        }
        System.out.println();
    }

    //壓棧
    public void push(int element){
        int[] newArr=new int[elements.length+1];
        for(int i=0;i<elements.length;i++){
            newArr[i]=elements[i];
        }
        newArr[newArr.length-1]=element;
        elements=newArr;
    }

    //彈棧
    public int pop(){
        if(elements.length<=0){
            throw new RuntimeException("棧為空");
        }
        int element=elements[elements.length-1];
        int[] newArr=new int[elements.length-1];
        for(int i=0;i<newArr.length;i++){
            newArr[i]=elements[i];
        }
        elements=newArr;
        return element;
    }
}