php 归并排序 数组交集
复制代码 代码如下:
$a=array('1','2','3','4','22');
$b=array('1','3','4','11','22','23');
f($a, $b, 5, 6, $t);
print_r($t);
function f(&$a, &$b, $n, $m, &$t){
$i=0;$j=0;
while($i<$n && $j<$m){
if($a[$i]==$b[$j]){
echo $a[$i]." ";//交集
$t[]=$a[$i++];
$t[]=$b[$j++];
}elseif($a[$i]>$b[$j]){
$t[]=$b[$j++];
}else{
$t[]=$a[$i++];
}
}
while($i<$n){
$t[]=$a[$i++];
}
while($j<$m){
$t[]=$b[$j++];
}
}