简单题21 - 合并两个有序链表(Java)20240917

问题描述:
java代码:
java 复制代码
/**
 * 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 list1, ListNode list2) {
        ListNode res = new ListNode(0);
        ListNode cur = res;
        while(list1 != null || list2 != null){
            if(list1 != null && list2 != null){
                if (list1.val == list2.val){
                    cur.next = new ListNode(list1.val);
                    cur = cur.next;
                    cur.next = new ListNode(list2.val);
                    list1 = list1.next;
                    list2 = list2.next;
                }else{
                    if(list1.val>list2.val){
                        cur.next = new ListNode(list2.val);
                        list2 = list2.next;
                    }else{
                        cur.next = new ListNode(list1.val);
                        list1 = list1.next;
                    }
                }
            }else if(list1 != null){
                cur.next = new ListNode(list1.val);
                list1 = list1.next;
            }else if(list2 != null){
                cur.next = new ListNode(list2.val);
                list2 = list2.next;
            }
            cur = cur.next;
        }
        return res.next;
    }
}
相关推荐
英英_8 小时前
MATLAB数值计算基础教程
数据结构·算法·matlab
kk哥88999 小时前
如何快速掌握JavaSE的核心语法?
java
我是一只小青蛙8889 小时前
AVL树:平衡二叉搜索树原理与C++实战
java·jvm·面试
浩瀚地学9 小时前
【Java】JDK8的一些新特性
java·开发语言·经验分享·笔记·学习
程序员-King.10 小时前
day143—递归—对称二叉树(LeetCode-101)
数据结构·算法·leetcode·二叉树·递归
XXOOXRT10 小时前
基于SpringBoot的加法计算器
java·spring boot·后端·html5
阿崽meitoufa10 小时前
JVM虚拟机:垃圾收集器和判断对象是否存活的算法
java·jvm·算法
我是苏苏11 小时前
C#高级:使用ConcurrentQueue做一个简易进程内通信的消息队列
java·windows·c#
heartbeat..12 小时前
数据库基础知识体系:概念、约束、范式与国产产品
java·数据库·学习笔记·国产数据库