본문 바로가기
공부/Algorithm

[HackerRank] Merge two sorted linked lists

by 김샤랑 2022. 3. 7.

[HackerRank] Merge two sorted linked lists


 

  • 문제 링크

https://www.hackerrank.com/challenges/merge-two-sorted-linked-lists/problem?isFullScreen=true 

 


시간복잡도: O(n)

 

  • 코드
def mergeLists(head1, head2):
    
    start =SinglyLinkedListNode(0) 
    end = start
    
    while 1:

        #end while condition
        if(head1 == None):
            end.next=head2 
            break
        
        if(head2 == None):
            end.next=head1
            break
            
        #compare
        if head1.data > head2.data:  
            end.next = head2
            head2 = head2.next

        elif head1.data < head2.data:
            end.next = head1
            head1 = head1.next

        else: #head1.data==head2.data:
            end.next = head1
            head1= head1.next 
            
            end = end.next
            
            end.next = head2
            head2 = head2.next
            
        end = end.next
        
    return start.next

 

 

 

'공부 > Algorithm' 카테고리의 다른 글

[LeetCode] Implement Trie  (0) 2022.03.21
[LeetCode] Two sum  (0) 2022.03.15
[HackerRank] Balanced Brackets  (0) 2022.03.11
[HackerRank] Jesse and Cookies  (0) 2022.03.09
[HackerRank] Equal stacks  (0) 2022.03.08

댓글