左程雲著演算法與資料結構題目最優解筆記 鍊錶

2021-07-30 18:40:18 字數 854 閱讀 1637

鍊錶是面試時被提及最頻繁的資料結構。鍊錶就是通過指標將乙個個節點連線起來。鍊錶是非連續的動態記憶體空間,鍊錶的查詢比陣列慢,但是新增和刪除比陣列快。

public class listnode 

}

public void insertlist(listnode head, int val) else 

p.next = tempnode;

}}

public void deletelistnode(listnode head, int val)  else 

if (p.next !=null)

}}

方法1:使用棧結構

public void printlist1(listnode head) 

while (!stack.isempty())

}

方法2:遞迴

public void printlist2 (listnode head) 

system.out.print(head.val+" ");

}}

注:遞迴的過程相當於棧。

public listnode reverselist (listnode head) 

return pre;

}

學習資料結構與演算法的記錄和整理,如有錯誤或意見請幫忙指出,以後會持續更新。。。。

參考書籍:

《程式設計師**面試指南:it名企演算法與資料結構題目最優解》—左程雲

《劍指offer》 —何海濤

資料結構演算法題目

從上到下按層列印二叉樹,同一層結點從左至右輸出。每一層輸出一行。幾個演算法題目 請實現乙個函式按照之字形列印二叉樹,即第一行按照從左到右的順序列印,第二層按照從右至左的順序列印,第三行按照從左到右的順序列印,其他行以此類推。幾個演算法題目 給乙個鍊錶,若其中包含環,請找出該鍊錶的環的入口結點,否則,...

演算法與資料結構最優解例項總結

1.棧與佇列 1.1 貓狗佇列 新增佇列物件 class petenterqueue count 為時間戳 class dogcatqueue 1.2 漢諾塔 process num,lef,middle,right,from,to 4.2 最小路徑 new 乙個 d i j min d i 1 j...

資料結構與演算法 鍊錶題目集合

參考自 jark s blog 鍊錶問題在面試過程中也是很重要也很基礎的一部分,鍊錶本身很靈活,很考查程式設計功底,所以是很值得考的地方。節點定義如下 struct node 1 以o 1 時間刪除某個節點題目描述 給定鍊錶的頭指標和乙個節點指標,在o 1 時間刪除該節點。google面試題 o 1...