5 1 Leetcode中和鍊錶相關的問題

2022-06-26 20:03:11 字數 950 閱讀 2314

lectcode 203. 移除鍊錶元素

刪除鍊錶中等於給定值 val 的所有節點。

示例:

輸入: 1->2->6->3->4->5->6, val = 6

輸出: 1->2->3->4->5

方法1 不採用虛擬頭結點

1

public

class

listnode

9 }

1

class

solution

1011

if(head == null) //

head == null:頭結點為空,即整個鍊錶為空,此時後面的邏輯就不需要執行了,直接返回head

12return head; //

其實就是返回null

13//

2.刪除鍊錶中間的節點值等於val

14 listnode prev =head;

15while(prev.next != null)

21else

22 prev =prev.next;23}

2425

return

head;26}

27 }

其實

等價於

2.採用虛擬頭結點

1

class

solution3

1516

return

dummyhead.next;17}

18 }

leetcode 鍊錶相加

給定兩個用鍊錶表示的整數,每個節點包含乙個數字。這些數字是反向存放的,也就是個位排在鍊錶首部。編寫函式對這兩個整數求和,並用鍊錶形式返回結果。示例 輸入 7 1 6 5 9 2 即617 295 輸出 2 1 9,即912 採用原地演算法,比較兩個鍊錶長度,如果長度一致,那麼鍊錶相加到任一鍊錶,計算...

LeetCode 鍊錶 相交鍊錶

語言 python 難度 簡單 描述 找到兩個單鏈表的重合鏈。比如 node a 4,1,8,4,5 node b 5,0,1,8,4,5 則這兩個鍊錶的起始節點為8,重合鏈為 8,4,5 node a 4,1,7,2,1 node b 5,0,1,8,4,5 則這兩個鍊錶的起始節點為null,不存...

Leetcode(鍊錶)相交鍊錶 c

編寫乙個程式,找到兩個單鏈表相交的起始節點。例如,下面的兩個鍊錶 a a1 a2 c1 c2 c3 b b1 b2 b3 在節點 c1 開始相交。注意 如果兩個鍊錶沒有交點,返回 null.在返回結果後,兩個鍊錶仍須保持原有的結構。可假定整個鍊錶結構中沒有迴圈。程式盡量滿足 o n 時間複雜度,且僅...