LeetCode-21. 合并两个有序链表(Merge Two Sorted Lists)

迭代

class Solution {
public:
    ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) {
        ListNode ans(0);
        ListNode *p = &ans;
        while(l1 && l2) {
        	if(l1->val < l2->val) {
        		p->next = new ListNode(l1->val);
        		p = p->next;
        		l1 = l1->next;
        	}else{
        		p->next = new ListNode(l2->val);
        		p = p->next;
        		l2 = l2->next;
        	}
        }
        while(l1) {
        	p->next = new ListNode(l1->val);
    		p = p->next;
    		l1 = l1->next;
        }
        while(l2) {
        	p->next = new ListNode(l2->val);
        	p = p->next;
        	l2 = l2->next;
        }
        return ans.next;
    }
};

题目链接:https://leetcode-cn.com/problems/merge-two-sorted-lists/

发布了42 篇原创文章 · 获赞 2 · 访问量 1416

猜你喜欢

转载自blog.csdn.net/Listen_heart/article/details/103057592