题解 | #合并两个有序的数组#
合并两个有序的数组
https://www.nowcoder.com/practice/89865d4375634fc484f3a24b7fe65665
void merge(int A[], int m, int B[], int n) {
//直接合并的话A中元素会有覆盖的问题。
//那么我们就倒着来归并就不会有覆盖的问题了,注意细节实现,考虑周全就好了。
int indexa=m-1;
int indexb=n-1;
int end=m+n-1;
while(indexb>=0 && indexa>=0)
{
if(A[indexa]>B[indexb])
{
A[end]=A[indexa];
indexa--;
}else
{
A[end]=B[indexb];
indexb--;
}
end--;
}
while(indexb>=0)
{
A[indexb]=B[indexb];
indexb--;
}
}

