欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

合并两个有序链表(Java)

程序员文章站 2022-06-26 15:19:35
...

题目描述

将两个有序链表合并成一个有序链表

解决

递归
代码:

	//递归
    public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
        if(l1 == null) return l2;
        if(l2 == null) return l1;
        if(l1.val < l2.val){
            //第一个链表节点的值小于第二个链表节点的值,第一个链表节点就放在前面,next指针指向第一个链表下一个节点和第二个链表节点中值比较小的那个
            l1.next = mergeTwoLists(l1.next,l2);
            return l1;
        }else{
            //第二个链表节点的值小于等于第一个链表节点的值,第二个链表节点就放在前面,next指针指向第二个链表下一个节点和第一个链表节点中值比较小的那个
            l2.next = mergeTwoLists(l1,l2.next);
            return l2;
        }
    }