首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

JavaSE 數據結構:棧(Stack)原理與陣列實現

     編輯:Java 綜合教學

JavaSE 數據結構:棧(Stack)原理與陣列實現

棧是一種線性存儲結構,特點如下:

  1. 數據遵循先進後出(LIFO)原則。
  2. 添加/刪除元素只能在棧頂進行。

陣列實現棧

定義 ArrayStack 類,包含陣列存儲、計數器,實現核心方法:

  • push(int item):壓入棧頂
  • pop():彈出棧頂元素並返回
  • peek():查看棧頂元素不移除
public class ArrayStack {
    private int[] mArray;
    private int mCount;

    public ArrayStack(int num) {
        mArray = new int[num];
        mCount = 0;
    }

    public void push(int item) {
        mArray[mCount] = item;
        mCount++;
    }

    public int pop() {
        int top = mArray[mCount - 1];
        mCount--;
        return top;
    }

    public int peek() {
        return mArray[mCount - 1];
    }

    public void print() {
        for (int i = 0; i <= mCount - 1; i++) {
            System.out.print(mArray[i] + ",");
        }
    }

    public static void main(String[] args) {
        ArrayStack stack = new ArrayStack(3);
        stack.push(5);
        stack.push(6);
        stack.push(7);
        stack.pop();
        stack.push(8);
        stack.print(); // 輸出 5,6,8,
    }
}
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved