two pointers 的大概意思就是用两个指针去遍历,适用于,例如:两个递增序列A与B合并成一个递增序列C,这种需要两边同时操作的。
我们就以这个例子来看:
将两个递增序列A与B合并成一个递增序列C:
下面是代码:
int merge(int A[],int B[],int C[],int n,int m){
int i=0,j=0,index=0;
while(i<n && j<m){
if(A[i] <= B[j]){
C[index++]=A[i++];
}else{
C[index++]=B[j++];
}
}
while(i<n) C[index++] = A[i++];
while(j<m) C[index++] = B[i++];
return index;
}