当前位置: 代码迷 >> 综合 >> leetcode练习题 merge-two-sorted-lists
  详细解决方案

leetcode练习题 merge-two-sorted-lists

热度:79   发布时间:2023-12-15 10:00:41.0

解题思路

遍历两个链表,将值较小的结点用尾插法插入新链表中,最后将有剩余结点的链表直接插到新链表的尾部,返回新链表。

代码

class Solution {
public:ListNode *mergeTwoLists(ListNode *l1, ListNode *l2) {ListNode *head = new ListNode(0);ListNode *f = head;ListNode *p = l1;ListNode *q = l2;while(p && q){if(p->val < q->val){ListNode *tmp = p->next;p->next = NULL;f->next = p;f = f->next;p = tmp;}else{ListNode *tmp = q->next;q->next = NULL;f->next = q;f = f->next;q = tmp;}}f->next = p ? p : q;return head->next;}
};