코린이의 소소한 공부노트

[LeetCode/Easy] 88. Merge Sorted Array 본문

코딩테스트 풀이/JAVA

[LeetCode/Easy] 88. Merge Sorted Array

무지맘 2022. 8. 24. 10:10

1. Input

1) 정수를 담은 int 배열 nums1, nums2

2) 각 배열은 오름차순으로 정렬된 상태

3) int 변수 m, n

4) n은 nums2의 길이

5) n + m은 nums1의 길이

 

2. Output

1) nums1과 nums2를 합친 배열

2) 합친 배열도 오름차순으로 정렬되어있어야 함

 

3. Constraint

1) 0 <= m, n <= 200

2) 1 <= m + n <= 200

3) -109 <= nums1[i], nums2[j] <= 109

 

4. Example

Input: nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3

Output: [1,2,2,3,5,6]

설명:

  - 1, 2, 3과 2, 5, 6을 합쳐서 오름차순으로 정렬하면 1, 2, 2, 3, 5, 6

 

5. Code

1) 첫 코드(2022/06/07)

for(int i=0 ; i<n ; i++)
    nums1[m+i] = nums2[i];
Arrays.sort(nums1);

  - num1의 수는 m-1번째까지 저장되어 있음

  - m번째부터 nums2의 숫자로 채움

  - nums2의 i번째 수를 nums1의 m+i번째에 저장

  - 그 후 nums1을 정렬함