题目描述
输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。
思路:
代码:
/* public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } }*/ public class Solution { public ListNode Merge(ListNode list1,ListNode list2) { if(list1==null && list2!=null) return list2; else if(list1!=null && list2==null) return list1; else if(list1==null && list2==null) return null; ListNode p1; ListNode p2; ListNode list3; if(list1.val <= list2.val) { list3 = list1; list1 = list1.next; } else{ list3 = list2; list2 = list2.next; } ListNode p3 = list3; while(list1!=null && list2!=null) { if(list1.val <= list2.val) { p1 = list1; list1 = list1.next; p1.next = null; p3.next = p1; p3 = p1; } else{ p2 = list2; list2 = list2.next; p2.next = null; p3.next = p2; p3 = p2; } } if(list1!=null) { p3.next = list1; } else { p3.next = list2; } return list3; } }