亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

Java基于鏈表實現棧的方法詳解

瀏覽:81日期:2022-09-04 13:14:12

本文實例講述了Java基于鏈表實現棧的方法。分享給大家供大家參考,具體如下:

在上幾小節中我們實現了基本的鏈表結構,并在上一節的底部給出了有關鏈表的源碼,此處在貼一次吧,猛戳

在開始棧的實現之前,我們再來看看關于鏈表的只在頭部進行的增加、刪除、查找操作,時間復雜度均為O(1),基于鏈表的這幾個優勢,我們在此基礎上實現棧。

Java基于鏈表實現棧的方法詳解

前言,在寫本小節之前,我們已經實現了一個基于靜態數組的棧,轉到查看。此處我們實現基于鏈表的棧。

1.鏈表類拷貝到Stack 包下:

在實現基于靜態數組的棧的時候,我們已經新建了一個package,此時我們將已經實現的鏈表類拷貝到該package下,目錄結構為:

Java基于鏈表實現棧的方法詳解

2.實現棧

新建一個LinkedListStack類,實現Stack接口,相關代碼如下:

Stack接口:

package Stack;public interface Stack<E> { //棧中元素個數 int getSize(); //棧中元素個數是否為空 boolean isEmpty(); //進棧 void push(E e); //出棧 E pop(); //查看棧頂元素 E peek();}

個LinkedListStack類:

package Stack;public class LinkedListStack<E> implements Stack<E> { private LinkedList<E> list; public LinkedListStack() { list = new LinkedList<E>(); } //棧中元素個數 @Override public int getSize() { return list.getSize(); } //棧中是否為空 @Override public boolean isEmpty() { return list.isEmpty(); } //在棧中添加元素 @Override public void push(E e) { list.addFirst(e); } //從棧中刪除第一個元素 @Override public E pop() { return list.removeFirst(); } //查看棧中第一個元素 @Override public E peek() { return list.getFirst(); } //主要是便于輸出給對象信息 @Override public String toString() { StringBuilder res = new StringBuilder(); res.append('Stack: top '); res.append(list); return res.toString(); }}

3.添加測試代碼

為了測試的簡單,我們在已經實現了Stack接口的LinkedListStack類中建立以main()方法,main中代碼如下:

//測試 public static void main(String[] args) { LinkedListStack<Integer> stack = new LinkedListStack<Integer>(); for (int i = 0; i < 5; i++) { stack.push(i); System.out.println(stack); } System.out.println('出棧一個元素:'); stack.pop(); System.out.println(stack); }

結果為:

Java基于鏈表實現棧的方法詳解

到此我們實現了底層是鏈表的棧。

關于本小節,若您覺得還行、還過得去,記得給個推薦哦~,謝謝!!

本節源碼 https://github.com/FelixBin/dataStructure/blob/master/src/Stack/LinkedListStack.java

更多關于java算法相關內容感興趣的讀者可查看本站專題:《Java數據結構與算法教程》、《Java操作DOM節點技巧總結》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》

希望本文所述對大家java程序設計有所幫助。

標簽: Java
相關文章:
主站蜘蛛池模板: 日韩一区二区在线视频 | 国产偷自拍视频 | 一级特黄特色的免费大片视频 | 国产精品福利在线观看免费不卡 | 色偷偷综合网 | 欧洲成品大片在线播放 | 成人一级免费视频 | 国产青青草 | 久久久久久尹人网香蕉 | 国产成人v视频在线观看 | 久青草国产手机在线观 | 日日麻批免费视频播放 | 免费一级黄色毛片 | 高清一级毛片 | 中国猛少妇色xxxxx | 欧美综合激情网 | 国产老肥妇视频 | 日韩色影院 | 免费在线观看中文字幕 | 天天拍夜夜操 | 久久夏同学国产免费观看 | 色综合久久手机在线 | 久久久久久久久久久9精品视频 | 美国人妖欧美性xxxxk妖 | 美国黄色a级片 | 免费精品一区二区三区在线观看 | 污网站大全免费 | 成人免费xxx色视频 成人免费短视频 | 在线黄色毛片 | 国产成人精品视频免费 | 日韩国产欧美精品综合二区 | a一级免费 | 夜色成人网 | 黄色大片免费看 | 国产一级黄色录像 | 亚洲国产欧美日韩一区二区 | 欧美日韩专区国产精品 | 久久久久久国产a免费观看黄色大片 | 欧美日韩亚洲高清不卡一区二区三区 | 免费看污的网站 | 免费观看好看的国产片 |