題意:
給你兩個鍊錶 list1 和 list2 ,它們包含的元素分別為 n 個和 m 個。
請你將 list1 中第 a 個節點到第 b 個節點刪除,並將list2 接在被刪除節點的位置。
資料範圍:
3<= list1.length <=
1041
<= a <= b < list1.length -11
<= list2.length <=
104
解法:模擬即可.
找到第(a-
1)和第(b)個結點的位置就行了.
但是leetcode的c++**使用free好像會報錯.
code:/**
* definition for singly-linked list.
* struct listnode
* listnode(int x) : val(x), next(nullptr) {}
* listnode(int x, listnode *next) : val(x), next(next) {}
* };
*/class
solution
pre_pa-
>next=list2;
listnode *tail2=list2;
while
(tail2-
>next)tail2=tail2-
>next;
tail2-
>next=nt_pb;
return list1;}}
;
leetcode1669 合併兩個鍊錶
給你兩個鍊錶 list1 和 list2 它們包含的元素分別為 n 個和 m 個。請你將 list1 中第 a 個節點到第 b 個節點刪除,並將list2 接在被刪除節點的位置。下圖中藍色邊和節點展示了操作後的結果 請你返回結果鍊錶的頭指標。示例 1 輸入 list1 0,1,2,3,4,5 a 3...
LeetCode 1669 合併兩個鍊錶
difficulty 中等 給你兩個鍊錶list1和list2,它們包含的元素分別為n個和m個。請你將list1中第a個節點到第b個節點刪除,並將list2接在被刪除節點的位置。下圖中藍色邊和節點展示了操作後的結果 請你返回結果鍊錶的頭指標。示例 1 輸入 list1 0,1,2,3,4,5 a 3...
LeetCode 合併兩個鍊錶
將兩個有序鍊錶合併為乙個新的有序鍊錶並返回。新煉表是通過拼接給定的兩個鍊錶的所有節點組成的。示例 輸入 1 2 4,1 3 4 輸出 1 1 2 3 4 4 遍歷解法 同時不斷遍歷兩個鍊錶,取出小的追加到新的頭節點後,直至兩者其中乙個為空 再將另一者追加的新鍊錶最後 public listnode ...