您的位置:首页 > 其它

LeetCode - Merge Sorted Array

2014-09-17 16:27 204 查看


题意

把两个排好序的数组合并到第一个里。


思路

从后面开始合并,这样不用移动原来数组中的元素。


代码

class Solution {

public:

void merge(int A[], int m, int B[], int n)

{

int i = m - 1, j = n - 1, pos = m + n - 1;

while (1)

    {

if (j < 0)

{

while (i >= 0) A[pos--] = A[i--];

break;

}

if (i < 0)

{

while (j >= 0) A[pos--] = B[j--];

break;

}

if (A[i] < B[j]) A[pos--] = B[j--];

else A[pos--] = A[i--];

if (pos < 0) break;

}

}

};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: