真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網站制作重慶分公司

如何理解java數(shù)據(jù)結構的棧

這期內容當中小編將會給大家?guī)碛嘘P如何理解java數(shù)據(jù)結構的棧,文章內容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

專注于為中小企業(yè)提供做網站、網站設計服務,電腦端+手機端+微信端的三站合一,更高效的管理,為中小企業(yè)廣州免費做網站提供優(yōu)質的服務。我們立足成都,凝聚了一批互聯(lián)網行業(yè)人才,有力地推動了1000多家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網站建設實現(xiàn)規(guī)模擴充和轉變。

棧是先進后出的一個數(shù)據(jù)結構,就跟子彈夾一樣。我當時聽到棧時:以為棧是java的底層。后來才知道不是,它只是一個概念,你可以通過任何你想到的方式去實現(xiàn)這個先進后出的概念。棧的底層是用數(shù)組實現(xiàn)的,下面的例子,大概模擬了java的實現(xiàn)方式。arraylist集合的底層同樣也是用數(shù)組實現(xiàn)的。

public class MyStack {

    int[] elements;
    
    public MyStack() {
        elements = new int[0];
    }
    
    //添加元素其實就是在數(shù)組中加入元素而已,重點是取值
    public void push(int ele) {
        //數(shù)組長度加1,你可以按照倍數(shù)進行擴容,java中好像是按照1倍進行擴容的
        int[] newArr = new int[elements.length+1];
        //把原數(shù)組中的元素復制到新的數(shù)組中
        for(int i=0;i            newArr[i] = elements[i];
        }
        //將新元素加入到最后
        newArr[elements.length]=ele;
        //替換為新數(shù)組
        elements = newArr;
    }
    
    //取值,棧是先進后出,所以先去最后放入的元素,對數(shù)組來說,就是下標最大的那個數(shù)
    public int pop() {
        //取出數(shù)組的最后一個元素
        int ele = elements[elements.length-1];
        //創(chuàng)建新的數(shù)組
        int[] newArr = new int[elements.length-1];
        //把原數(shù)組中的元素復制到新的數(shù)組中
        for(int i=0;i            newArr[i] = elements[i];
        }
        //替換為新數(shù)組
        elements = newArr;
        return ele;
    }
}

上述就是小編為大家分享的如何理解java數(shù)據(jù)結構的棧了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


本文題目:如何理解java數(shù)據(jù)結構的棧
分享地址:http://weahome.cn/article/gghegs.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部