美文网首页剑指 Offer Java版
剑指Offer Java版 面试题25:合并两个排序的链表

剑指Offer Java版 面试题25:合并两个排序的链表

作者: 孙强Jimmy | 来源:发表于2019-07-17 21:54 被阅读1162次

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

    练习地址

    https://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) {
            if (list1 == null) {
                return list2;
            }
            if (list2 == null) {
                return list1;
            }
            ListNode head = null;
            if (list1.val < list2.val) {
                head = list1;
                head.next = Merge(list1.next, list2);
            } else {
                head = list2;
                head.next = Merge(list1, list2.next);
            }
            return head;
        }
    }
    

    复杂度分析

    • 时间复杂度:O(n)。
    • 空间复杂度:O(n)。

    👉剑指Offer Java版目录
    👉剑指Offer Java版专题

    相关文章

      网友评论

        本文标题:剑指Offer Java版 面试题25:合并两个排序的链表

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