leetcode 21.合并两个有序链表

leetcode 21.合并两个有序链表

第二十一题:合并两个有序链表

1.迭代:

当 l1 和 l2 都不是空链表时,判断 l1 和 l2 哪一个链表的头节点的值更小,将较小值的节点添加到结果里,当一个节点被添加到结果里之后,将对应链表中的节点向后移一位。

public ListNode mergeTwoLists(ListNode list1, ListNode list2) {
        ListNode head = new ListNode(-1);
        ListNode result = head;
        while (list1 !=null && list2!=null){
            if (list1.val <= list2.val){
                result.next = list1;
                list1 = list1.next;
            }
            else {
                result.next = list2;
                list2 = list2.next;
            }
            result = result.next;
        }
        result.next = list1 == null? list2:list1;
        return head.next;
    }
posted @ 2024-01-17 10:52  米乡卷炸粉  阅读(4)  评论(0编辑  收藏  举报