本文主要是介绍leetcode 题号#21 合并两个有序链表,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
查看题目详情可点击此处。
题目
将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。
示例:
输入:1->2->4, 1->3->4
输出:1->1->2->3->4->4
解题思路
首先两个链表都是有序的,那就是需要解决一条链的某几个连续结点需要插入另一条链的两个结点之间的情况,我将两条链分为主链和支链,结点遍历只在主链上发生,支链只负责将头结点与主链被遍历到的当前结点比对,当比当前结点小时就将支链插入当前结点之前,支链融合为主链,此时的当前结点及其之后的结点都被转化为支链,继续之前的操作,直到支链为NULL为止,代码如下。
class Solution {public ListNode mergeTwoLists(ListNode l1, ListNode l2
这篇关于leetcode 题号#21 合并两个有序链表的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!