LeetCode刷题笔录 Merge Two Sorted Lists

来源:互联网 发布:背单词app 知乎 编辑:程序博客网 时间:2024/06/05 10:58

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.

这题不能像merge sort一样用extra space。做法是new一个新的链表头作为结果链表的dummy head,将两个链表按顺序插入dummy head的链表里。

public class Solution {    public ListNode mergeTwoLists(ListNode l1, ListNode l2) {        ListNode p1 = l1;        ListNode p2 = l2;        ListNode fakeHead = new ListNode(0);        ListNode p = fakeHead;                while(p1 != null && p2 != null){            if(p1.val <= p2.val){                p.next = p1;                p1 = p1.next;            }            else{                p.next = p2;                p2 = p2.next;            }            p = p.next;        }        if(p1 != null)            p.next = p1;        if(p2 != null)            p.next = p2;        return fakeHead.next;            }}


0 0
原创粉丝点击