Pj-A 2023-01-16 22:51 采纳率: 77.3%
浏览 126
已结题

这一句不太理解l1.next = mergeTwoLists(l1.next, l2);

要求

img


递归解法

class Solution {
    public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
        if (l1 == null) {
            return l2;
        } else if (l2 == null) {
            return l1;
        } else if (l1.val < l2.val) {
            l1.next = mergeTwoLists(l1.next, l2);
            return l1;
        } else {
            l2.next = mergeTwoLists(l1, l2.next);
            return l2;
        }
    }
}

  • 写回答

2条回答 默认 最新

  • ShowMeAI 2023-01-16 23:13
    关注
    l1.next = mergeTwoLists(l1.next, l2);
    

    这一句代码是在使用递归来合并两个链表。


    它将当前节点l1的next属性设置为递归调用mergeTwoLists(l1.next, l2)的返回值。这意味着它将当前节点l1的next属性设置为l1链表和l2链表中当前节点之后的部分组成的新链表。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 1月24日
  • 已采纳回答 1月16日
  • 创建了问题 1月16日