本文最后更新于234 天前,其中的信息可能已经过时,如有错误请发送邮件到xieyuchen3@gmail.com
输入:l1 = [1,2,4], l2 = [1.3.4]
输出:[1,1,2,3,4,4,]
示例 2:
输入:l1 = [], l2 = [] 输出:[]
示例 3:
输入:l1 = [], l2 = [0] 输出:[0]
递归实现
压栈原理
class Solution {
fun mergeTwoLists(list1: ListNode?, list2: ListNode?): ListNode? {
// 如果其中一个为空,直接返回另一个
if (list1 == null) return list2
if (list2 == null) return list1
// 比较两个节点的值,小的作为头节点
if (list1.`val` < list2.`val`) {
list1.next = mergeTwoLists(list1.next, list2)
return list1
} else {
list2.next = mergeTwoLists(list1, list2.next)
return list2
}
}
}
