Skip to content

Commit 923764e

Browse files
committed
[Easy] Title: 88. Merge Sorted Array - LeetCode
1 parent 6737175 commit 923764e

File tree

2 files changed

+67
-0
lines changed

2 files changed

+67
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
class Solution {
2+
public void merge(int[] nums1, int m, int[] nums2, int n) {
3+
int i = m-1; //1배열의 유효값 마지막 인덱스(최대값)
4+
int j = n-1; //2배열의 유효값 마지막 인덱스(최대값)
5+
int k = m + n - 1; //최종 병합된 1배열의 마지막 인덱스
6+
7+
while(i >= 0 && j >= 0) {
8+
//1배열의 최대값이 2배열의 최대값보다 클때
9+
if(nums1[i] > nums2[j]) {
10+
//1배열 최대값을 빈 공간으로 이동 후 1배열 포인터만 이동
11+
nums1[k--] = nums1[i--];
12+
} else {
13+
// 1배열의 최대값이 2배열 최대값보다 작을때
14+
nums1[k--] = nums2[j--];
15+
}
16+
}
17+
18+
// 2배열 값이 남아있을 경우 추가 병합
19+
while(j >= 0) {
20+
nums1[k--] = nums2[j--];
21+
}
22+
}
23+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# [Easy] 125. Valid Palindrome
2+
3+
[문제 링크](https://leetcode.com/problems/merge-sorted-array/)
4+
5+
### 문제 설명
6+
You are given two integer arrays nums1 and nums2, sorted in non-decreasing order, and two integers m and n, representing the number of elements in nums1 and nums2 respectively.
7+
8+
Merge nums1 and nums2 into a single array sorted in non-decreasing order.
9+
10+
The final sorted array should not be returned by the function, but instead be stored inside the array nums1. To accommodate this, nums1 has a length of m + n, where the first m elements denote the elements that should be merged, and the last n elements are set to 0 and should be ignored. nums2 has a length of n.
11+
12+
### 입출력
13+
Example 1:
14+
```
15+
Input: nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3
16+
Output: [1,2,2,3,5,6]
17+
```
18+
Explanation: The arrays we are merging are [1,2,3] and [2,5,6].
19+
The result of the merge is [1,2,2,3,5,6] with the underlined elements coming from nums1.
20+
21+
Example 2:
22+
```
23+
Input: nums1 = [1], m = 1, nums2 = [], n = 0
24+
Output: [1]
25+
```
26+
Explanation: The arrays we are merging are [1] and [].
27+
The result of the merge is [1].
28+
29+
Example 3:
30+
```
31+
Input: nums1 = [0], m = 0, nums2 = [1], n = 1
32+
Output: [1]
33+
```
34+
Explanation: The arrays we are merging are [] and [1].
35+
The result of the merge is [1].
36+
Note that because m = 0, there are no elements in nums1. The 0 is only there to ensure the merge result can fit in nums1.
37+
38+
### 문제설명
39+
Constraints:
40+
- nums1.length == m + n
41+
- nums2.length == n
42+
- 0 <= m, n <= 200
43+
- 1 <= m + n <= 200
44+
- -109 <= nums1[i], nums2[j] <= 109

0 commit comments

Comments
 (0)