zoukankan      html  css  js  c++  java
  • LeetCode 21. Merge Two Sorted Lists (合并两个有序链表)

    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.


    题目标签:Linked List

      题目给了我们两个lists,让我们有序的合并两个 lists。

      这题利用递归可以从list 的最后开始向前链接nodes,代码很简洁,清楚。

    Java Solution:

    Runtime beats 74.35% 

    完成日期: 06/09/2017

    关键词:singly-linked list

    关键点:利用递归从最后开始链接nodes

     1 /**
     2  * Definition for singly-linked list.
     3  * public class ListNode {
     4  *     int val;
     5  *     ListNode next;
     6  *     ListNode(int x) { val = x; }
     7  * }
     8  */
     9 class Solution 
    10 {
    11     public ListNode mergeTwoLists(ListNode l1, ListNode l2) 
    12     {
    13         if(l1 == null)
    14             return l2;
    15         if(l2 == null)
    16             return l1;
    17         
    18         if(l1.val < l2.val)
    19         {
    20             l1.next = mergeTwoLists(l1.next, l2);
    21             return l1;
    22         }
    23         else
    24         {
    25             l2.next = mergeTwoLists(l1, l2.next);
    26             return l2;
    27         }
    28     }
    29     
    30 }

    参考资料:

    https://discuss.leetcode.com/topic/45002/java-1-ms-4-lines-codes-using-recursion

    LeetCode 题目列表 - LeetCode Questions List

    题目来源:https://leetcode.com/

  • 相关阅读:
    成长篇之代码灵异事件
    idea快捷键
    java环境配置常用链接
    MySQL分区
    English 动词篇
    仿stl+函数模板
    java 数组复制
    拓扑排序(Topological Sorting)
    2017蓝桥杯第十题(k倍区间)
    翻译NYOJ
  • 原文地址:https://www.cnblogs.com/jimmycheng/p/7883000.html
Copyright © 2011-2022 走看看