【发布时间】:2017-06-14 18:00:04
【问题描述】:
今天在一次采访中,我在不使用任何内置函数(例如 in_array 等)的情况下解决了以下问题。我能够解决程序,但他们告诉我有没有更好的方法,而且他们告诉我总代码只有最多 7 行。所以谁能告诉我比这更好的方法:-
<?php
$a = array(1,3,5,2,1,5,11,16);
$b = array(1,4,3,11,12,5,7,18);
$final = [];
for($i=0;$i<count($a);$i++){
$flag = 0;
if($i==0){
$final[] = $a[$i];
} else {
for($j=0;$j<count($final);$j++){
if($a[$i] == $final[$j]){
$flag = 1;
}
}
if($flag==0){
$final[] = $a[$i];
}
for($k=0;$k<count($final);$k++){
if($b[$i] == $final[$k]){
$flag = 1;
}
}
if($flag==0){
$final[] = $b[$i];
}
}
}
echo '<pre>';
print_r($final);
结果将是包含两个唯一数组的最终数组,例如
Array ( [0] => 1 [1] => 3 [2] => 4 [3] => 5 [4] => 2 [5] => 11 [6] => 16 [7] => 18 )
【问题讨论】:
-
它应该做什么?
-
问题是什么?
-
对不起,我更新了我的问题,请立即查看
-
上面是你做的代码。最初的代码是什么?只有那两个数组?还是三个数组?
-
关于改进工作代码的问题属于Code Review