`
Cwind
  • 浏览: 265487 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
博客专栏
793bb7df-a2a9-312d-8cb8-b66c3af482d1
LeetCode题解
浏览量:53538
社区版块
存档分类
最新评论

LeetCode[链表] - #21 Merge Two Sorted Lists

阅读更多

原题链接:#21 Merge Two Sorted Lists

 

要求:

合并两个已排序的单向链表,将合并后的结果作为一个链表返回。

ListNode定义:

public class ListNode {
    int val;
    ListNode next;
    ListNode(int x) { val = x; }
}

 

难度:简单

 

分析:

由于两个链表均已排好序,令两个指针指向两个链表的头节点,每次取出两个指针中值较小的一个节点,然后将指针后移。当一个链表遍历完以后,将另一个链表的剩余部分拼接到结果链表的尾部即可。

 

解决方案:

Java - 304ms    

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

 简单测试程序

 

1
1
分享到:
评论

相关推荐

    LeetCode Merge 2 Sorted Lists解决方案

    Merge 2 Sorted Lists是LeetCode上的一个经典算法题目,旨在考察程序员对链表的操作和排序算法的掌握程度。下面对该题目的解决方案进行详细的分析和解释。 问题描述 Merge 2 Sorted Lists问题的描述是:将两个...

    leetcode-链表笔记

    Merge Two Sorted Lists**:合并两个已排序的链表,保持排序顺序。 - **142. Linked List Cycle II**:找到链表环的长度,并给出进入环的第一个节点。 4. **解决链表问题的策略** - **迭代法**:使用循环遍历...

    leetcode分类-leetcode:leetcode问题的代码

    leetcode 分类leetcode 问题分类 leetcode代码仓库,我的解题思路写在我的博客里: leetcode 代码库,我博客上的解题思路: mkdir 列表: 大批 #1:Two Sum #4:Median of Two Sorted Arrays 地图 #1:Two Sum #3:...

    leetcode跳跃-leetcode:leetcode一天一次

    leetcode 跳跃 leetcode 动态规划,背包问题 01背包问题:416. Partition Equal Subset Sum 最长回文:5. ...有序链表合并:21. Merge Two Sorted Lists 回文 双指针判断回文:680. 验证回文字符串 Ⅱ

    leetcode中文版-LeetCode:力码

    21.Merge Two Sorted Lists LeetCode 23.Merge k Sorted Lists(solve1) LeetCode 23.Merge k Sorted Lists(solve2) LeetCode 86.Partition List LeetCode 92.Reverse Linked List II LeetCode 138.Copy List with ...

    leetcode中325题python-leetcode:leetcode

    merge-two-sorted-lists 82 删除排序链表中的重复元素 II remove-duplicates-from-sorted-list ii 83 删除排序链表中的重复元素 remove-duplicates-from-sorted-list 86 分隔链表 partition-list 92 反转链表 II ...

    leetcode分发糖果-ForDaFactory:使用C++的个人leetcode解决方案

    21-合并两个有序链表:merge-two-sorted-lists 83-删除排序链表中的重复元素:remove-duplicates-from-sorted-list 92-反转链表II:reverse-linked-listt-ii 141-环形链表:linked-list-cycle 142-环形链表:linked-list-...

    _leetcode-python.pdf

    - Merge Two Sorted Lists: 合并两个有序链表。 - Generate Parentheses: 生成所有可能的有效的括号组合。 - Merge k Sorted Lists: 合并k个排序链表。 - Swap Nodes in Pairs / Reverse Nodes in k-Group: 这两个...

    leetcode中文版-LeetCode:LeetcodeC++/Java

    leetcode中文版 LeetCode # Title Chinese Tag Solution 1 Two Sum 两数之和 array,hash 2 Add Two Numbers 两数相加 math 3 Longest Substring Without Repeating Characters 无重复字符的最长子串 string 4 ...

    Leetcode答案(c++版)

    **1.3 Merge Two Sorted Lists (21)** - **问题描述**:合并两个排序链表,使合并后的链表是排序的。 - **解题思路**: - 创建一个虚拟头节点,用于记录合并后的链表起始位置。 - 比较两个链表当前节点的大小,较...

    leetcode跳跃-leetcode:leetcode解题之路

    leetcode 跳跃 leetcode 按题型标签,记录...合并K个排序链表](./Heap/merge-k-sorted-lists.md) String 字符串 [0006 Z字形变换](./String/zigzag-conversion.md) [0030 串联所有单词的子串](./String/substring

    leetcode备忘录系统-Algorithms-DataStructures:算法-数据结构

    leetcode备忘录系统算法-数据结构 两个不错的排序算法及其 Big-O(完成) 归并排序 快速排序 冒泡排序 基本数据结构实现及其 Big-O 复杂性 哈希图 堆 队列 双端队列双端队列 链表 反转链表 合并两个排序列表 回文...

    leetcode2sumc-LeetCode:LeetCode的一些题目

    leetcode 2 sum c LeetCode 帮助文档 帮助文档存放在Help文件夹下。 文件名 文件描述 链接 complexitypython.txt Python的一些常规操作的复杂度统计 题目清单 Array(数组) ID Difficulty Title Java Python 1 Easy ...

    leetcode2sumc--Offer:-提供

    leetcode 2 sum c LeetCode 贵有恒,何必三更起五更睡;最无益,只怕一日暴十寒。 我的个人网站: 分享技术,乐享生活:Jack Cui公众号每周五推送“程序员欢乐送”系列资讯类文章,欢迎您的关注! 帮助文档 帮助文档...

    leetcode2sumc-ack-CherishLeetCode:ack-CherishLeetCode

    leetcode 2 sum c LeetCode 贵有恒,何必三更起五更睡;最无益,只怕一日暴十寒。 我的个人网站: 分享技术,乐享生活:Jack Cui公众号每周五推送“程序员欢乐送”系列资讯类文章,欢迎您的关注! 帮助文档 帮助文档...

    Leetcode题目+解析+思路+答案.pdf

    - **Merge Sorted Lists**:合并两个已排序的链表。 - **Reverse Linked List**:反转链表。 - **Swap Nodes in Pairs**:交换链表中的相邻节点。 - **Sort List**:对链表进行排序。 - **Rotate List**:将...

    LeetCode 刷题汇总1

    * 合并两个排序列表(Merge Two Sorted Lists):合并两个排序列表。 * 搜索插入位置(Search Insert Position):在排序数组中搜索插入位置。 8. 动态规划: * 3Sum(3Sum):找到数组中三个元素的和等于目标值...

    Leetcode book刷题必备

    20. Merge Two Sorted Lists:合并两个有序链表。 21. Add Two Numbers:模拟两数相加的过程,链表表示数字,个位对齐。 22. Swap Nodes in Pairs:在链表中交换相邻节点。 23. Merge K Sorted Lists:合并 k 个排序...

    leetcode常见的100热点算法题

    6. **链表操作**:链表题目考察了指针操作和逻辑思维,如"Reverse Linked List"(反转链表)和"Merge Two Sorted Lists"(合并两个排序链表)。 7. **哈希表**:哈希表的高效查找和存储特性使得它在解决许多问题时...

    c语言-c语言编程基础之leetcode题解第23题合并K个升序链表.zip

    本题来自著名的在线编程挑战平台LeetCode,题号为第23题,名为“Merge K Sorted Lists”(合并K个升序链表)。这是一道典型的数据结构与算法题目,主要考察的是链表操作和排序技巧。 链表是计算机科学中常用的一种...

Global site tag (gtag.js) - Google Analytics