搜索
写经验 领红包
 > 时尚

如何合并两个有序链表(合并两个链表)

导语:合并两个有序链表

将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。

解题思路:

递归:递归对于一个新手来说是一个非常神秘的东西,咋一看“哦,这么回事”,上手一写 “我CA,咋回事了?”递归到底是个啥东西呢?其实就是一个函数(方法)在执行的过程中调用自己,直到遇到终止条件退出,如果没有终止条件就会无限循环,导致内存溢出。

代码片段:

public static ListNode mergeTwoLists(ListNode node1, ListNode node2) {    if (node1 == null) {        return node2;    } else if (node2 == null) {        return node1;    } else if (node1.val < node2.val) {        node1.next = mergeTwoLists(node1.next, node2);        return node1;    } else {        node2.next = mergeTwoLists(node1, node2.next);        return node2;    }}

本地运行结果:

LeetCode执行结果:

每天一道算法题,欢迎大佬沟通指正~

本文内容由小彤整理编辑!