zoukankan      html  css  js  c++  java
  • 合并两个排序链表

    题目:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。

    思路:扫一遍维护递增,最后再添加原链表可能未被添加的部分

     public ListNode Merge(ListNode list1,ListNode list2) {
            if(list1==null&&list2==null) return null;
            if(list1==null&&list2!=null) return list2;
            if(list1!=null&&list2==null) return list1;
             ListNode res1=new ListNode(-1);
               ListNode res=res1;
           //要有两个指针指向创建的头结点,一个指针会走到末尾,返回的时候已经不能用了
            while(list1!=null&&list2!=null){
                if(list1.val<=list2.val){
                    res.next=list1;
                    res=res.next;
                    list1=list1.next;
                }else{
                    res.next=list2;
                    res=res.next;
                    list2=list2.next;
                }
            }
             while(list1 != null) {
                res.next = list1;
               res = res.next;
                list1 = list1.next;
            }
            while(list2 != null) {
                res.next = list2;
                res = res.next;
                list2 = list2.next;
            }
            return res1.next;
        }
  • 相关阅读:
    Mybatis中的like模糊查询
    Cookie
    架构师的自我修养
    微服务要面临的问题
    为啥要去IOE——分布式架构的由来
    分层架构设计
    如何选开源协议
    中国互联网20年简史
    2018第27周总结
    保住本金,安全第一
  • 原文地址:https://www.cnblogs.com/team42/p/6681902.html
Copyright © 2011-2022 走看看