Merge Two Sorted Lists问题及解法

    xiaoxiao2021-03-25  105

    问题描述:

    Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists.

    问题分析:

    该题主要是将两个有序的链表合并为一个有序的列表,方法很简单,直接看代码即可

    /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode* mergeTwoLists(ListNode* l1, ListNode* l2) { ListNode dummy(INT_MIN); //先创建一个小的头结点 ListNode *tail = &dummy; while(l1 && l2) { if(l1->val < l2->val) { tail->next = l1; l1 = l1->next; } else { tail->next = l2; l2 = l2->next; } tail = tail->next; } tail->next = l1 ? l1 : l2; return dummy.next; } };

    转载请注明原文地址: https://ju.6miu.com/read-10736.html

    最新回复(0)