今天的朋友圈,在下雪❄️❄️。
1. 判斷鍊錶是否為空
2. 刪除鍊錶節點,時間複雜度要求為o(1)
(1)若要滿足時間複雜度為o(1),需有以下幾個前提:
3. 單向鍊錶轉置
(1)思想:用三個臨時指標pre,cur,next在鍊錶上迴圈遍歷。
(2)關鍵**:
while(null != cur)
4. 判斷乙個單向鍊錶是否有環及環入口
(1)思想:
(2)關鍵**:
while((null != fast) && (null != fast ->next))
}if(null == fast)
if (fast == slow)
return slow;
}
5.判斷兩個鍊錶是否相交
(2)若相交,相交後,後面的節點全部共用。
(3)鍊錶不帶環:若鍊錶相交,則兩個鍊錶的最後乙個節點一定相同。
(4)鍊錶帶環:若鍊錶相交,則兩個鍊錶一定共環。
(5)思想:先判斷鍊錶是否帶環,若不帶環,判斷鍊錶最後乙個節點是否相同;若帶環,判斷乙個鍊錶環中的節點是否在另乙個鍊錶中存在。
資料結構學習筆記 鍊錶
表示式的計算 表示式的計算涉及到棧的操作 對於表示式 a b c d e f 演算法 用到兩個棧,分別是符號棧和運算元棧。輸入表示式時,為了表示表示式輸入完畢,在表示式的最後加上 號,也就是說輸入的表示式為 a b c d e f 首先設定各個符號的優先順序,和 的優先順序為0,也就是最低的 和 的...
資料結構學習筆記 鍊錶
2.建立鍊錶 3.單向和雙向迴圈鍊錶 4.總結 struct list node 首先了解鍊錶的組成部分 說明 頭節點 在單鏈表的第乙個結點之前附設乙個結點,它沒有直接前驅,稱之為頭結點,頭結點的資料域可以不儲存任何資訊,指標域指向第乙個節點 首節點 的位址。頭結點的作用是使所有鍊錶 包括空表 的頭...
資料結構學習 鍊錶
將從下面4部分進行介紹 首先介紹鍊錶是什麼,然後介紹為什麼定義鍊錶,接著是鍊錶的分類,最後簡單介紹一下鍊錶結點的插入與刪除方法。首先,在介紹鍊錶之前,我們先介紹一下什麼是順序儲存結構。我們知道資料在計算機中的儲存就像貨物在倉庫中的儲存一樣,不但占用一定的空間,還要有乙個標示儲存位置的位址。計算機通過...