java 通過鍊錶實現棧

2021-08-01 13:51:11 字數 1091 閱讀 5717

節點類

package stack.demo;

public

class

node

public node getnextnode()

public

void

setnextnode(node nextnode)

public object getdata()

public

void

setdata(object data)

public node getprevnode()

public

void

setprevnode(node prevnode)

}

棧類

package stack.demo;

public

class linkedstack

node newnode = new node(value);

node temp = last;

newnode.setprevnode(temp);

last = newnode;

if (temp == null) else

size++;

}// 棧是先進後出,必須要棧低以上的先出完,才能拿到棧的底的資料

public string removelast()

node temp = last;

last = last.getprevnode();

size--;

return (string) temp.getdata();

}}

執行類

package stack.demo

;public class main

}

執行結果

進a 進b

進c 進d

進e 已經是滿棧了

進f 出棧: e

出棧: d

出棧: c

出棧: b

出棧: a

已經是空棧了

出棧: null

Java實現棧 佇列 鍊錶

棧 底層陣列 棧頂指標 public class mystack 自定義構造器,自定義初始化棧大小 public mystack int initsize 插入 public void push int num 刪除 public intpop 檢視 public intpeek 佇列 底層陣列 佇...

Java使用鍊錶實現棧

大話資料結構中,這一塊其實對於初學的還是挺難的,我看了小半天,最後才轉過彎來,首先看圖,圖中箭頭指明了思路,一開始我對鍊錶的頭部沒想明白,後來想通了,就是每次壓棧就相當於將元素放在鍊錶頭部,即棧頂指標元素相當於鍊錶中的首節點 因此每次插入乙個,都需要將插入前的棧頂結點賦值給新節點的next結點屬性 ...

java利用鍊錶實現棧

在前面,寫了怎麼利用陣列來實現棧,以及動態陣列的利用。今天我們就利用鍊錶的方式來實現棧,我們知道鍊錶儲存資料只要記憶體夠,就可以放足夠多的資料,這也就解決了陣列帶來的弊端。鍊錶類 public class llnode public llnode object data public object ...