본문 바로가기

[ leetcode ]

88. Merge Sorted Array

반응형
SMALL

정수형 값을 가진 list 두개가 있다. 

nums1, nums2일 때, nums1의 수 중에서 0은 nums2의 길이만큼 들어있다.

이때,  0을 대체하여 nums2의 값이 들어가고 오름차순으로 nums1과 nums2가 합쳐진 결과를 구해라.

 


solution 1.

그대로 nums1과 nums2를 더하고 정렬한다.

그 후, 0이 nums1에서 존재하면 제거하는데, nums2에서도 0이라는 값이 존재할 수 있다. 그렇기 때문에 nums2의 길이보다 작거나 같게, 다시 말해서 num2의 길이를 넘지 않는 선에서 nums1에서 0을 제거한다. 그러면 nums1에 존재하던 nums2의 자리인 0만 사라지게 된다.

 

class Solution:
    def merge(self, nums1: List[int], m: int, nums2: List[int], n: int) -> None:
        """
        Do not return anything, modify nums1 in-place instead.
        """
        nums1.extend(nums2)
        nums1.sort()
        i = 1
        while 0 in nums1 and n >= i:
            nums1.remove(0)
            i += 1
반응형
LIST

'[ leetcode ]' 카테고리의 다른 글

101. Symmetric Tree  (0) 2022.12.20
94. Binary Tree Inorder Traversal  (0) 2022.12.18
69. Sqrt(x)  (0) 2022.12.17
66. Plus One  (0) 2022.12.16
198. House Robber  (0) 2022.12.15