LeetCode 21. 合并两个有序链表(单链表)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode 21. 合并两个有序链表(单链表)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 1. 題目信息
- 2. 解題
1. 題目信息
將兩個有序鏈表合并為一個新的有序鏈表并返回。新鏈表是通過拼接給定的兩個鏈表的所有節點組成的。
示例:輸入:1->2->4, 1->3->4 輸出:1->1->2->3->4->4來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/merge-two-sorted-lists
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
2. 解題
- 鏈表的基本操作,注意把前一個節點和下一個節點(l1,l2當前位置里的較小者)連起來
《劍指Offer》同題:面試題25. 合并兩個排序的鏈表
class Solution { public:ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) {if(!l1)return l2;if(!l2)return l1;ListNode* emptyHead = new ListNode(0);ListNode* cur = emptyHead;while(l1 && l2){while(l1 && l2 && l1->val <= l2->val){cur->next = l1;cur = l1;l1 = l1->next;}while(l1 && l2 && l1->val > l2->val){cur->next = l2;cur = l2;l2 = l2->next;}}if(!l1)cur->next = l2;elsecur->next = l1;return emptyHead->next;} };總結
以上是生活随笔為你收集整理的LeetCode 21. 合并两个有序链表(单链表)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode 145. 二叉树的后序
- 下一篇: LeetCode 389. 找不同(位运