• 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.

    Example:

    Input: 1->2->4, 1->3->4
    Output: 1->1->2->3->4->4

    大神的代码
    class Solution {
        public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
            if(l1==null)return l2;
            if(l2==null)return l1;
            if(l1.val<l2.val){
                l1.next=mergeTwoLists(l1.next,l2);
                return l1;
            }
            else{
                l2.next=mergeTwoLists(l1,l2.next);
                return l2;
            }
        }
    }



    自己写的很笨的代码
    class Solution {
        public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
            ListNode n1=l1,n2=l2;
            ListNode ln=null;
            ListNode ans=null;
            while(n1!=null&&n2!=null){
                if(n1.val<n2.val){
                    if(ln==null){
                        ln=n1; 
                        ans=ln;
                    }
                    else{
                        ln.next=n1;
                        ln=ln.next;
                    } 
                    n1=n1.next;      
                }
                else{
                    if(ln==null){
                        ln=n2;
                        ans=ln;
                    }
                    else{
                        ln.next=n2;
                        ln=ln.next;
                    }
                    n2=n2.next;
                }
            }
            while(n1!=null){
                if(ln==null){
                    ln=n1;
                    ans=ln;
                }
                else{
                    ln.next=n1;
                    ln=ln.next;
                }
                n1=n1.next;
            }
            while(n2!=null){
                if(ln==null){
                    ln=n2;
                    ans=ln;
                }
                else{
                    ln.next=n2;
                    ln=ln.next;
                }
                n2=n2.next;
            } 
            
            return ans;
        }
    }


  • 相关阅读:
    同一台Windows机器中启动多个Memcached服务
    Java注解(三)
    Java注解(二)
    Java注解(一)
    Memcached入门
    C++读取配置文件
    C语言读取配置文件
    凸优化中的基本概念
    Hadoop伪分布式的搭建
    老师布置的几道作业
  • 原文地址:https://www.cnblogs.com/albert67/p/10419375.html
Copyright © 2020-2023  润新知