码迷,mamicode.com
首页 > 其他好文 > 详细

[LintCode] Merge Two Sorted Lists

时间:2015-11-17 10:47:47      阅读:170      评论:0      收藏:0      [点我收藏+]

标签:

Merge Two Sorted Lists

Merge two sorted (ascending) linked lists and return it as a new sorted list. The new sorted list should be made by splicing together the nodes of the two lists and sorted in ascending order.

Example

Given 1->3->8->11->15->null2->null , return 1->2->3->8->11->15->null.

 

SOLUTION:

链表在merge的时候其实要有优势的,它不需要额外空间,不想array,要重新开一个空间放array。操作的时候也很简单,弄一个dummy,然后把小的直接连上就行了。此题属于基本操作,在其他题里完全可以作为function调用。

代码:

技术分享
/**
 * Definition for ListNode.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode(int val) {
 *         this.val = val;
 *         this.next = null;
 *     }
 * }
 */ 
public class Solution {
    /**
     * @param ListNode l1 is the head of the linked list
     * @param ListNode l2 is the head of the linked list
     * @return: ListNode head of linked list
     */
    public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
        if (l1 == null){
            return l2;
        }
        if (l2 == null){
            return l1;
        }
        ListNode dummy = new ListNode(0);
        ListNode node = dummy;
        while (l1 != null && l2 != null){
            if (l1.val < l2.val){
                node.next = new ListNode(l1.val);
                l1 = l1.next;
                node = node.next;
            } else {
                node.next = new ListNode(l2.val);
                l2 = l2.next;
                node = node.next;
            }
        }
        while (l1 != null){
            node.next = new ListNode(l1.val);
            l1 = l1.next;
            node = node.next;
        }
        while (l2 != null){
            node.next = new ListNode(l2.val);
            l2 = l2.next;
            node = node.next;
        }
        return dummy.next;
    }
}
View Code

 

[LintCode] Merge Two Sorted Lists

标签:

原文地址:http://www.cnblogs.com/tritritri/p/4970915.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!