题解 | #合并两个有序的数组# 暴力

合并两个有序的数组

https://www.nowcoder.com/practice/89865d4375634fc484f3a24b7fe65665

import java.util.*;
public class Solution {
    public void merge(int A[], int m, int B[], int n) {
        int result[] = new int[m + n];
        int idx = 0;
        int idx_a = 0;
        int idx_b = 0;
        while (idx_a < m || idx_b < n) {
            if (idx_a == m) {
                while (idx_b != n) {
                    result[idx++] = B[idx_b++];
                }
                break;
            } else if (idx_b == n) {
                while (idx_a != m) {
                    result[idx++] = A[idx_a++];
                }
                break;
            } else if (A[idx_a] <= B[idx_b]) {
                result[idx++] = A[idx_a++];
            } else {
                result[idx++] = B[idx_b++];
            }
        }
        for(int i=0;i<m+n;i++){
            A[i] = result[i];
        }
        return;
    }
}

牺牲空间,换取更简单的实现方式,不在A上做操作,直接新创建一个数组,最后再把生成的值赋值给A

全部评论

相关推荐

MingoTree:看不出你你的技术栈,想找什么工作,然后课设项目别写上去了,自我评价删了,前后端你想好你要干啥,这种简历投上去秒挂的
点赞 评论 收藏
分享
EEbond:给北邮✌️跪了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务