标签:
---恢复内容开始---
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 two arrays很像。一一比较大小,小的用dummy node接上,再继续找,继续比较。最后检查下两个list,如果两个list都空了,那就完成了。任何一个linkedlist不空,就把之前建立的接到那个linkedlist搜索到的node上。
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */ public class Solution { public ListNode mergeTwoLists(ListNode l1, ListNode l2) { if(l1==null) { return l2; } if(l2==null) { return l1; } ListNode dummy=new ListNode(-1); ListNode node=dummy; while(l1!=null&&l2!=null) { if(l1.val<l2.val) { node.next=l1; l1=l1.next; } else { node.next=l2; l2=l2.next; } node=node.next; } if(l1!=null) { node.next=l1; } if(l2!=null) { node.next=l2; } return dummy.next; } }
---恢复内容结束---
标签:
原文地址:http://www.cnblogs.com/Machelsky/p/5902626.html