Merge Sorted Array
public class Solution {
/*
* @param A: sorted integer array A which has m elements, but size of A is m+n
* @param m: An integer
* @param B: sorted integer array B which has n elements
* @param n: An integer
* @return: nothing
*/
public void mergeSortedArray(int[] A, int m, int[] B, int n) {
// write your code here
int i = m - 1, j = n - 1, k = m + n - 1;
while (i >= 0 && j >= 0) {
if (A[i] < B[j]) {
A[k] = B[j];
j--;
k--;
} else {
A[k] = A[i];
i--;
k--;
}
}
while (i >= 0) {
A[k] = A[i];
i--;
k--;
}
while (j >= 0) {
A[k] = B[j];
j--;
k--;
}
}
}
最后更新于
这有帮助吗?