Leetcode/Top 100 Liked

[Linked List][Easy] 21. Merge Two Sorted Lists.

자전거통학 2024. 4. 9. 22:02

https://leetcode.com/problems/merge-two-sorted-lists/description

 

Q. 두개의 정렬된 리스트를 하나의 리스트로 병합하라. 

 

Solution. 

 직관대로 그냥 하면 되겠다. 

 

더보기
C#

public ListNode MergeTwoLists(ListNode list1, ListNode list2) 
{
    ListNode head = null;
    ListNode n1 = list1;
    ListNode n2 = list2;
    ListNode prev = null;
    while(n1!=null || n2!=null)
    {
        int v1 = n1!=null ? n1.val : int.MaxValue;
        int v2 = n2!=null ? n2.val : int.MaxValue;

        ListNode node;
        if(v1<v2)
        { 
            node = new ListNode(v1);
            n1 = n1==null ? null : n1.next;
        }
        else
        {
            node = new ListNode(v2);
            n2 = n2==null ? null : n2.next;
        }
        if(head == null)
            head = node;

        if(prev != null)    prev.next = node;
        prev = node;
    }
    return head;
}

 

적절한 결과.