
题目:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。
实现
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
public class { public ListNode Merge(ListNode list1, ListNode list2) { if (list1 == null) return list2; if (list2 == null) return list1;
ListNode head = null; ListNode p = null; ListNode q = null; ListNode n = null; if (list1.val <= list2.val) { head = list1; p = list1.next; q = list2; n = list1; } else { head = list2; p = list1; q = list2.next; n = list2; }
while (p != null && q != null) { if (p.val <= q.val) { n.next = p; n = p; p = p.next; } else { n.next = q; n = q; q = q.next; } } if (p == null) { n.next = q; } else if (q == null) { n.next = p; }
return head; } }
|
近期评论