From b684b5c421728544dcc7a6543daaf67a2fb3e449 Mon Sep 17 00:00:00 2001 From: SinnoLn Date: Wed, 7 Oct 2026 23:41:14 +0900 Subject: [PATCH] 88. Merge Sorted Array --- .../88. Merge Sorted Array.java" | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 "leetcode3/\354\235\264\354\247\204\355\235\254/88. Merge Sorted Array.java" diff --git "a/leetcode3/\354\235\264\354\247\204\355\235\254/88. Merge Sorted Array.java" "b/leetcode3/\354\235\264\354\247\204\355\235\254/88. Merge Sorted Array.java" new file mode 100644 index 00000000..5f381761 --- /dev/null +++ "b/leetcode3/\354\235\264\354\247\204\355\235\254/88. Merge Sorted Array.java" @@ -0,0 +1,30 @@ +import java.util.ArrayDeque; +import java.util.Deque; + +class Solution { + public void merge(int[] nums1, int m, int[] nums2, int n) { + int idx1 = 0; + int idx2 = 0; + Deque dq = new ArrayDeque<>(); + + for (int i = 0; i < m; i++) { + dq.add(nums1[i]); + } + + for (int i = 0; i < m + n; i++) { + if (!dq.isEmpty() && idx2 < n) { + if (dq.peek() <= nums2[idx2]) { + nums1[i] = dq.poll(); + } else { + nums1[i] = nums2[idx2]; + idx2++; + } + } else if (!dq.isEmpty()) { + nums1[i] = dq.poll(); + } else { + nums1[i] = nums2[idx2]; + idx2++; + } + } + } +} \ No newline at end of file