Leetcode 21 - Merge Two Sorted Lists(LinkList)

    xiaoxiao2021-03-25  106

    题意

    合并两个有序链表

    思路

    两个指针分别指向两个链表的头,每次选择较小的一个插入新的链表并且指针后移

    代码

    /** * 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 *head = new ListNode(0), *p = head; while (l1 || l2) { ListNode *t; if (l1 && l2) t = (l1->val < l2->val ? l1 : l2); else if (l1) t = l1; else t = l2; t == l1 ? l1 = l1->next : l2 = l2->next; p->next = t; p = p->next; } return head->next; } };
    转载请注明原文地址: https://ju.6miu.com/read-10990.html

    最新回复(0)