Easy-题目23:21. Merge Two Sorted Lists

原创 2016年05月30日 20:08:40

题目原文:
Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists.
题目大意:
把两个排序的链表合并成一个链表并仍然保持有序。
题目分析:
(1) 如果一个链表是空的,则返回另一个。
(2) 令两个指针l1和l2分别指向A、B两个链表的头,扫两个链表,对应节点谁较小谁就接到新链表的尾部,若相等两个都接上。
(3) 当其中一个链表扫完,另一个未扫完的时候,把未扫完的部分接到新链表尾部。
源码:(language:java)

public class Solution {
    public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
        if(l1==null)
            return l2;
        else if(l2==null)
            return l1;
        else {
            ListNode head=new ListNode(Math.min(l1.val,l2.val));
            ListNode temp=head;
            if(temp.val==l1.val && temp.val==l2.val) {
                head.next=new ListNode(l1.val);
                temp=temp.next;
            }
            if(temp.val==l1.val)
                l1=l1.next;
            if(temp.val==l2.val)
                l2=l2.next;
            while(l1!=null && l2!=null) {
                if(l1.val<=l2.val) {
                    ListNode p=new ListNode(l1.val);
                    temp.next=p;
                    temp=p;
                    l1=l1.next;
                }
                else {
                    ListNode p=new ListNode(l2.val);
                    temp.next=p;
                    temp=p;
                    l2=l2.next;
                }
            }
            if(l1==null)
                temp.next=l2;
            else if(l2==null)
                temp.next=l1;
            return head;        
        }
    }
}

成绩:
1ms,beats 12.13%,众数1ms,87.87%

版权声明:完整版Leetcode题解请出门左转https://github.com/cmershen1/leetcode/tree/master/docs

LeetCodet题解--21. Merge Two Sorted Lists(合并两个排序好的链表)

链接 LeetCode题目:https://leetcode.com/problems/merge-two-sorted-lists GitHub代码:https://github.co...
  • gatieme
  • gatieme
  • 2016年04月08日 11:06
  • 1445

两个有序数组的中位数Median of Two Sorted Arrays(很重要)

https://leetcode.com/problems/median-of-two-sorted-arrays/ 对于一个长度为n的已排序数列a,若n为奇数,中位数为a[n / 2 + 1]...
  • gao1440156051
  • gao1440156051
  • 2016年06月21日 11:11
  • 3256

LintCode数组题总结

做算法题的时候,几乎不可避免要跟数组打交道。在LintCode上数组那一章有这么一些题目: 1)547. Intersection of Two Arrays 比较简单。要求找到2个数组的...
  • luoshengkim
  • luoshengkim
  • 2016年06月02日 23:16
  • 1800

21. Merge Two Sorted Lists [easy] (Python)

题目链接https://leetcode.com/problems/merge-two-sorted-lists/题目原文 Merge two sorted linked lists and re...
  • coder_orz
  • coder_orz
  • 2016年05月29日 01:42
  • 1173

Merge Two Sorted Lists (EASY)

题目Merge two sorted linked lists and return it as a new list. The new list should be made by splicing...
  • mccand1234
  • mccand1234
  • 2016年10月23日 18:09
  • 87

[LeetCode] 021. Merge Two Sorted Lists (Easy) (C++/Python)

[LeetCode] 021. Merge Two Sorted Lists (Easy) (C++/Python)
  • hcbbt
  • hcbbt
  • 2015年03月04日 20:11
  • 3524

Leetcode刷题记——21. Merge Two Sorted Lists(合并两有序链表)

一、题目叙述: Merge two sorted linked lists and return it as a new list. The new list should be...
  • sunshine0_0
  • sunshine0_0
  • 2016年10月25日 15:26
  • 160

leetCode 21.Merge Two Sorted Lists (合并排序链表) 解题思路和方法

Merge Two Sorted Lists  Merge two sorted linked lists and return it as a new list. The new list sho...
  • xygy8860
  • xygy8860
  • 2015年07月06日 19:19
  • 681

LeetCode笔记:21. Merge Two Sorted Lists

合并两个有序链表
  • Cloudox_
  • Cloudox_
  • 2016年09月28日 15:23
  • 782

21. Merge Two Sorted Lists★

题目内容:Merge two sorted linked lists and return it as a new list. The new list should be made by splic...
  • Queen_Bey
  • Queen_Bey
  • 2017年03月25日 21:25
  • 106
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Easy-题目23:21. Merge Two Sorted Lists
举报原因:
原因补充:

(最多只允许输入30个字)