[CareerCup] 11.1 Merge Arrays 合并数组

 

11.1 You are given two sorted arrays, A and B, where A has a large enough buffer at the end to hold B. Write a method to merge B into A in sorted orde.

 

LeetCode上的原题,请参见我之前的博客Merge Sorted Array 混合插入有序数组

 

复制代码
class Solution {
public:
    void merge(vector<int> &a, int m, vector<int> &b, int n) {
        int cnt = m + n - 1;
        --m; --n;
        while (m >= 0 && n >= 0) a[cnt--] = a[m] > b[n] ? a[m--] : b[n--];
        while (n >= 0) a[cnt--] = b[n--];
    }
};
复制代码

 

posted @   Grandyang  阅读(831)  评论(0编辑  收藏  举报
Fork me on GitHub

喜欢请打赏

扫描二维码打赏

Venmo 打赏

点击右上角即可分享
微信分享提示