leetcode-21-合并两个有序链表
问题:
package com.example.demo; public class Test21 { /** * 合并两个链表 * 思路: * 遍历两个链表,比较两个链表的值,将小的 */ public ListNode mergeTwoLists(ListNode l1, ListNode l2) { if (l1 == null) { return l2; } if (l2 == null) { return l1; } ListNode dummy = new ListNode(-1); ListNode temp = dummy; // 遍历两个链表 while (l1 != null && l2 != null) { if (l1.val < l2.val) { temp.next = l1; l1 = l1.next; } else { temp.next = l2; l2 = l2.next; } temp = temp.next; } // 如果一个节点遍历完成之后,则将另一个节点剩下的节点都赋给新的链表中 temp.next = l1 == null ? l2 : l1; return dummy.next; } public class ListNode { int val; ListNode next; ListNode(int x) { val = x; } } }