题解 | #合并两个排序的链表#
合并两个排序的链表
http://www.nowcoder.com/practice/d8b6b4358f774294a89de2a6ac4d9337
合并排序的变形,简单题
/* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } }*/ public class Solution { public ListNode Merge(ListNode list1,ListNode list2) { ListNode head = null; ListNode p = head; while(list1 != null && list2 != null) { ListNode node = null; if (list1.val < list2.val) { node = list1; list1 = list1.next; } else { node = list2; list2 = list2.next; } if (head == null) { head = node; p = head; } else { p.next = node; p = p.next; } node.next = null; } while(list1 != null) { ListNode node = list1; if (head == null) { head = node; p = head; } else { p.next = node; p = p.next; } list1 = list1.next; node.next = null; } while(list2 != null) { ListNode node = list2; if (head == null) { head = node; p = head; } else { p.next = node; p = p.next; } list2 = list2.next; node.next = null; } return head; } }