Posted on 2013-04-18 13:44
小明 阅读(1275)
评论(0) 编辑 收藏 所属分类:
数据结构和算法
分析:
为了避免使用额外的空间,这里的技巧就是从后向前合并。代码很简单,但是也要求基本功扎实。
public class Solution {
public void merge(int A[], int m, int B[], int n) {
int e = m+n;
while(m>0 && n>0){
if(A[m-1]>B[n-1]){
A[--e]=A[--m];
}
else{
A[--e]=B[--n];
}
}
if(n>0){
System.arraycopy(B,0,A,0,n);
}
}
}