堆疊的實現可以基於鍊錶實現
它實際上只完成鍊錶的部分功能,我們可以通過繼承鍊錶並遮蔽掉部分方法就可以了
它是乙個後進先出的鍊錶(lifo),乙個物件在插入的時候被放在整個堆疊的頭部,刪除也只能在頭部進行
我們需要的是鍊錶的頭部插入和頭部刪除方法,遮蔽尾部插入和尾部刪除方法,其他的類似
/***
* @author fane
** todo
* 2005-08-01
* 堆疊實現類
* */
public class stacklist extends mylist
public stacklist()
/*** 在堆疊前面插入元素
* @param insertitem
*/public void insertatfront(object insertitem)
else
}/**
* 從堆疊頭部刪除元素
* @return
* @throws emptymylistexception
*/public object removefromfront()throws emptymylistexception
else
return removeitem;
} /**
* 判斷堆疊是否為空
* @return
*/public boolean isempty()
/*** 輸出堆疊的各個元素**/
public void print()
system.out.print("the "+this.name+ " is: ");
listnode current = this.firstnode;
while(current != null)
system.out.println();
system.out.println();}}
C 資料結構篇(二)堆疊
我們再完成堆疊,其實堆疊和線性表沒什麼大的區別,堆疊其實是一種特殊的線性表,使用push 壓輸入資料,pop 彈出資料,才用,先進後出的原則,就這麼簡單。前面已經寫好了list 類,在這裡我們可以呼叫它。如下 using system namespace list 空的時候為 int 型別的最大值 ...
資料結構 線性結構 三 堆疊
引入 字尾表示式求值 字尾表示式 運算符號位於兩個運算數之後 例 62 3 42 8 求值策略 從左向右 掃瞄 逐個處理運算數和運算符號 遇到運算數 記住當前運算數 遇到運算子 運用對應的運算數進行計算,將計算得到的數記住 一 堆疊的抽象資料型別描述 堆疊 stack 具有一定操作約束的線性表 即只...
Java資料結構02堆疊 《精華》
堆疊 是訪問資料的方式 存資料得借助陣列或連表或集合等來儲存資料 只是你定義乙個只允許資料自有序列表 前端 作輸入 輸出操作。具有先進後出filo first in last out 的特性的方法,就是堆疊。author 煩了 少側得,多側惑 堆疊,其實是自己定義好規則 也就是方法,具有先進後出的特...