首页 > 其他 > 详细

leetcode之Merge Two Sorted Lists

时间:2015-04-13 18:23:10      阅读:214      评论:0      收藏:0      [点我收藏+]

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的结点当做head来处理,这样就可以递归了,这道题主要参考了剑指offer的面试题17。

下面附上代码:

if(l1==null){
        	return l2;
        }
        if(l2==null){
        	return l1;
        }
        ListNode newListHead = null;
        if(l1.val<l2.val){
        	newListHead = l1;
        	newListHead.next = mergeTwoLists(l1.next,l2);
        }
        else{
        	newListHead = l2;
        	newListHead.next = mergeTwoLists(l1,l2.next);
        }
        return newListHead;

  

leetcode之Merge Two Sorted Lists

原文:http://www.cnblogs.com/gracyandjohn/p/4422447.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!