题目
Given two sorted integer arrays A and B, merge B into A as one sorted array.
Note:
You may assume that A has enough space (size that is greater or equal to m + n) to hold additional elements from B. The number of elements initialized in A and B are m andn respectively.
从后往前归并就可以不用额外空间了。
代码
public class MergeSortedArray {
public void merge(int A[], int m, int B[], int n) {
int i = m - 1;
int j = n - 1;
while (i >= 0 && j >= 0) {
if (A[i] > B[j]) {
A[i + j + 1] = A[i];
--i;
} else {
A[i + j + 1] = B[j];
--j;
}
}
while (j >= 0) {
A[j] = B[j];
--j;
}
}
}LeetCode | Merge Sorted Array,布布扣,bubuko.com
原文:http://blog.csdn.net/perfect8886/article/details/20578531