题解 | #合并两个排序的链表#

合并两个排序的链表

http://www.nowcoder.com/practice/d8b6b4358f774294a89de2a6ac4d9337

递归遍历解题思路 alt 不断上下交换扫描比较。

/* 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 head = new ListNode(0); merge02(head,list1,list2); return head.next; } public void merge02(ListNode cur,ListNode l,ListNode r){ if(l == null && r!=null){ cur.next = r; return; }else if(l != null && r==null){ cur.next = l; return; } if(l.val > r.val){ cur.next = r; cur = r; r = r.next; merge02(cur,l,r); }else{ cur.next = l; cur = l; l = l.next; merge02(cur,l,r); }

}

}

全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务