用鍊錶來模擬棧,節點需要乙個指向前乙個節點的pre域和資料域
棧只需要乙個棧頂即可
public
class
nodestack
判斷棧為空的操作就是判斷棧頂是否為null(前面初始化的棧頂就是為null)
//判斷是否為空
鍊錶入棧就是將入棧的節點pre域指向當前的棧頂,然後再將棧頂移到新壓入棧中的節點
//入棧
public
void
push
(node node)
//出棧
public node pop()
node value = top;
top = top.
getpre()
;return value;
}
棧的遍歷是從棧頂開始向棧底進行遍歷的
//遍歷
public
void
list()
node temp = top;
while
(temp != null)
}
鍊錶操作練習
本小題請務必重視,綜合了各種鍊錶操作 各種考試考題 可以做成乙個比較完整的工程,請設計測試程式進行測試,務必自己編寫 1 針對帶表頭結點的單鏈表,試編寫下列函式。1 建立函式create 根據一維陣列a n 建立乙個單鏈表,使單鏈表中各元素的次序與a n 中各元素的次序相同,要求該程式的時間複雜性為...
鍊錶操作練習
這裡來總結一下覺得比較有思想的題啪 160.相交鍊錶 這裡的想法是a b與b a遍歷的時間是一樣的,就是說從a鍊錶開始遍歷接著從b鍊錶開始遍歷與先遍歷b在遍歷a同時結束。public class solution pa pa.next pb pb.next return ans 206.反轉鍊錶 這...
鍊錶常見操作練習
鍊錶是乙個很重要的資料結構,一直沒有好好的寫過練習,這次放假,好好練習一下。1 定義鍊錶節點 include include include typedef struct int node node 2 合併兩個有序鍊錶 版本1 node merge node p,node q else while...