直接上代码。这里最后一次比较会有数组越界,幸运的是php并不会报错。
<?php
$arr1 = [1,3,4,6,9,11,12,18,20];
$arr2 = [2,3,4,5,8,12,13,14,19,20];
$length = count($arr1) + count($arr2);
$arr = [];
$i=0;$j=0;
while( --$length > 0)
{
if($arr1[$i] < $arr2[$j])
{
$arr[$arr1[$i++]]++;
}
else
{
$arr[$arr2[$j++]]++;
}
}
print_r(array_keys($arr));
结果:
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
[6] => 8
[7] => 9
[8] => 11
[9] => 12
[10] => 13
[11] => 14
[12] => 18
[13] => 19
[14] => 20
)