六、用Array模擬簡(jiǎn)易版Stack

一、核心思想

棧只允許訪問(wèn)一個(gè)數(shù)據(jù)項(xiàng),也就是最后插入的數(shù)據(jù)項(xiàng),只有移除了這個(gè)數(shù)據(jù)項(xiàng)才能訪問(wèn)倒數(shù)第二個(gè)插入的數(shù)據(jù)項(xiàng)。先進(jìn)后出。

二、源碼

package com.ctw;

/**
 * @author TongWei.Chen 2018-09-29 13:37:14
 * @Description:
 * @Project sjjg-sf
 */
public class MyStack {

    private int maxSize;

    private long[] arr;

    // 棧頂位置
    private int top;

    // 構(gòu)造器
    public MyStack(int size) {
        maxSize = size;
        arr = new long[maxSize];
        top = -1;
    }

    // 入棧
    public void push(long value) {
        arr[++ top] = value;
        /*
         * 上面一句話等于下面兩句話:
         * top ++;
         * arr[top] = value;
         */
    }

    // 出棧
    public long pop() {
        return arr[top --];
        /*
         * 上面一句話等于下面三句話:
         * long value = arr[top];
         * top --;
         * return value;
         */
    }

    // 訪問(wèn)棧頂元素
    public long peek() {
        return arr[top];
    }

    // 棧是否為空
    public boolean isEmpty() {
        return top == -1;
    }

    // 棧是否滿了
    public boolean isFull() {
        return top == maxSize - 1;
    }

    public static void main(String[] args) {
        MyStack myStack = new MyStack(6);
        myStack.push(1L);
        myStack.push(2L);
        myStack.push(3L);
        myStack.push(4L);
        myStack.push(-100L);
        System.out.println(myStack.peek());
        while (! myStack.isEmpty()) {
            System.out.println(myStack.pop());
        }
    }
}

三、廣告

  • 碼云地址

    https://gitee.com/geekerdream/

  • QQ群【Java初學(xué)者學(xué)習(xí)交流群】:458430385

  • 微信公眾號(hào)【Java碼農(nóng)社區(qū)】

    img
  • 今日頭條號(hào):編程界的小學(xué)生

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • (譯) JSON-RPC 2.0 規(guī)范(中文版) Gitee 下載 Github 下載 SourceForge 下...
    布客飛龍閱讀 1,008評(píng)論 0 5
  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,346評(píng)論 25 708
  • 孩子的成就不光是成績(jī)能體現(xiàn)的,素質(zhì)教育亦是重要。 最近有一篇文章很火:《小孩的惡到底有多可怕》 在文章里,作者談及...
    大胖何佛俠閱讀 429評(píng)論 0 0
  • 文|木凡就是喜歡獨(dú)坐。沒(méi)有理由,亦沒(méi)有目的。不喜歡被打擾,亦不喜歡去打擾別人。 點(diǎn)上一杯咖啡,在一處角落里獨(dú)坐到底...
    木凡I先生閱讀 367評(píng)論 2 2

友情鏈接更多精彩內(nèi)容