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

合并两个有序的数组

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

全部评论

相关推荐

赛博小保安:你这简历没啥大问题的,经历技能也足够了,问题应该就是出在出身了,学院本就是这样,HR忙着跟92的勾搭呢,哪有心思看我们这些双非😿😭
点赞 评论 收藏
分享
轻絵梨花泪沾衣:南泵,大少爷驾到通通闪开
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务