zoukankan      html  css  js  c++  java
  • 21. 合并两个有序链表-链表-简单

    问题描述

    将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 

    示例:

    输入:1->2->4, 1->3->4
    输出:1->1->2->3->4->4

    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/merge-two-sorted-lists

    解答

    /**
     * Definition for singly-linked list.
     * public class ListNode {
     *     int val;
     *     ListNode next;
     *     ListNode() {}
     *     ListNode(int val) { this.val = val; }
     *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
     * }
     */
    class Solution {
        public ListNode mergeTwoLists(ListNode l1, ListNode l2) {
            if(l1 == null && l2 != null)return l2;
            else if(l1 != null && l2 == null)return l1;
            else if(l1 == null && l2 == null)return l1;
            if(l1.val > l2.val){
                ListNode res = mergeTwoLists(l2,l1);
                return res;
            }
            ListNode res = l1, p = l1, q = l2;
            while(p!=null && q!=null){
                l2 = q;
                if(p.val <= q.val && p.next!=null && p.next.val >= q.val){
                    q = q.next;
                    l2.next = p.next;
                    p.next = l2;
                }else if(p.next!=null && p.next.val <= q.val)p = p.next;
                else if(p.next == null){p.next = q;return res;}
            }
            return res;
        }
    }
  • 相关阅读:
    resin
    tomcat
    vba打开输入文件
    获取文件夹下所有文件2
    获取文件夹下所有文件
    修改Execl中sheet名的指定字符串为指定字符串
    SpringMVC入门到精通(一)
    Java JDBC
    Java反射
    Java日期格式化
  • 原文地址:https://www.cnblogs.com/xxxxxiaochuan/p/13352701.html
Copyright © 2011-2022 走看看