美文网首页
剑指Offer(四)

剑指Offer(四)

作者: 管弦_ | 来源:发表于2017-05-02 15:19 被阅读0次

    题目十六:合并两个排序的链表

    题目描述:
    输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。

    解题思路:
    递归版本

        public ListNode Merge(ListNode list1,ListNode list2) {
    
            if (list1 == null) {
                return list2;
            }
    
            if (list2 == null) {
                return list1;
            }
    
            if(list1.val <= list2.val){
                list1.next = Merge(list1.next, list2);
                return list1;
            }else{
                list2.next = Merge(list1, list2.next);
                return list2;
            }
        }
    

    非递归版本

         public ListNode Merge(ListNode list1,ListNode list2) {
    
            if (list1 == null) {
                return list2;
            }
    
            if (list2 == null) {
                return list1;
            }
    
            ListNode mergeHead = null;
            ListNode current = null;
    
            while (list1 != null && list2 != null) {
    
                if (list1.val <= list2.val) {
    
                    if (mergeHead == null) {
                        mergeHead = current = list1;
                    } else {
                        current.next = list1;
                        current = current.next;
                    }
                    list1 = list1.next;
    
                } else {
    
                    if (mergeHead == null) {
                        mergeHead = current = list2;
                    } else {
                        current.next = list2;
                        current = current.next;
                    }
                    list2 = list2.next;
    
                }
    
            }
    
            if (list1 == null) {
                current.next = list2;
            } else if (list2 == null) {
                current.next = list1;
            }
    
            return mergeHead;
        }
    

    相关文章

      网友评论

          本文标题:剑指Offer(四)

          本文链接:https://www.haomeiwen.com/subject/pnwctxtx.html