leetcode 88 Merge Sorted Array

博客介绍了合并两个有序数组的方法。由于两个数组已排好序,每次取两者中较小的放入新数组,当一个数组为空时,将另一个数组剩余部分直接放入新数组。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

lc88 Merge Sorted Array

因为两个array都已经排好序了,每次取两者间较小的放入新array中,当一个array空了,直接把另一个array剩下的全放入新array即可

 1 class Solution {
 2     public void merge(int[] nums1, int m, int[] nums2, int n) {
 3         int[] res = new int[m+n];
 4         int count = 0;
 5         int i=0, j=0;
 6         while(i < m || j < n){
 7             if(compare(nums1, i, m, nums2, j, n)){
 8                 res[count++] = nums1[i++];
 9             }else
10                 res[count++] = nums2[j++];
11         }
12         
13         System.arraycopy(res, 0, nums1, 0, m+n);
14     }
15     
16     private boolean compare(int[] nums1, int i, int m, int[] nums2, int j, int n){
17         if(i == m)
18             return false;
19         if(j == n)
20             return true;
21         return nums1[i] < nums2[j] ? true : false;
22     }
23 }

 

转载于:https://www.cnblogs.com/hwd9654/p/10925878.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值