leetcode 85:merge-two-sorted-lists
阿新 • • 發佈:2020-08-11
題目描述
將兩個有序的連結串列合併為一個新連結串列,要求新的連結串列是通過拼接兩個連結串列的節點來生成的。 題目分析: 本問題是一個常規問題,先先建立一個表頭節點,然後比較給定的兩個連結串列的節點的值,依次連到表頭後面(如果一個表已經遍歷到尾節點了,另一個表直接連線到新連結串列的後面即可)。然後返回新表頭的下一個節點即可。 程式碼如下:1 ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) { 2 ListNode* Nodel1 = l1; 3 ListNode* Nodel2 = l2; 4ListNode* newHead = new ListNode(0); 5 ListNode* cur = newHead; 6 while (Nodel1 != nullptr&&Nodel2 != nullptr) { 7 if (Nodel1->val > Nodel2->val) 8 { 9 cur->next = Nodel2; 10 Nodel2 = Nodel2->next; 11 }12 else 13 { 14 cur->next = Nodel1; 15 Nodel1 = Nodel1->next; 16 } 17 cur = cur->next; 18 } 19 if (Nodel1 != nullptr) 20 cur->next = Nodel1; 21 if (Nodel2 != nullptr) 22 cur->next = Nodel2;23 return newHead->next; 24 }