25. 合并两个排序的链表

优质
小牛编辑
141浏览
2023-12-01

NowCoder

题目描述

解题思路

递归

// java
public ListNode Merge(ListNode list1, ListNode list2) {
    if (list1 == null)
        return list2;
    if (list2 == null)
        return list1;
    if (list1.val <= list2.val)="" {="" list1.next="Merge(list1.next," list2);="" return="" list1;="" }="" else="" list2.next="Merge(list1," list2.next);="" list2;="" 

迭代

// java
public ListNode Merge(ListNode list1, ListNode list2) {
    ListNode head = new ListNode(-1);
    ListNode cur = head;
    while (list1 != null && list2 != null) {
        if (list1.val <= list2.val)="" {="" cur.next="list1;" list1="list1.next;" }="" else="" list2="list2.next;" cur="cur.next;" if="" (list1="" !="null)" (list2="" return="" head.next;=""