若干个不同长度数组同顺序对比得到与原数组不同的数字或组合
时间: 2024-03-08 07:51:25 浏览: 17
您可以使用PHP中的array_diff()函数来找出多个数组中的不同项,具体实现代码如下:
```
$arr1 = array(1, 2, 3, 4, 5);
$arr2 = array(2, 3, 6, 7, 8);
$arr3 = array(3, 4, 5, 9, 10);
// 找出不同项
$diff1 = array_diff($arr1, $arr2, $arr3);
$diff2 = array_diff($arr2, $arr1, $arr3);
$diff3 = array_diff($arr3, $arr1, $arr2);
// 合并不同项
$diff = array_merge($diff1, $diff2, $diff3);
// 输出结果
echo implode(',', $diff); // 输出1,6,7,9,10
```
上述代码中,array_diff()函数用于找出每个数组中与其他数组不同的数字或组合,然后使用array_merge()函数将它们合并成一个数组。最后使用implode()函数将数组转换为字符串并输出结果。
相关问题
若干个不同长度数组同顺序对比得到与原数组不同的最少数字或组合
您可以使用PHP中的array_diff()函数来找出多个数组中的不同项,并结合count()函数来计算每个数组中的不同项数量,最后选择不同项数量最少的数组作为结果。具体实现代码如下:
```
$arr1 = array(1, 2, 3, 4, 5);
$arr2 = array(2, 3, 6, 7, 8);
$arr3 = array(3, 4, 5, 9, 10);
// 找出不同项并计算数量
$diff1 = count(array_diff($arr1, $arr2, $arr3));
$diff2 = count(array_diff($arr2, $arr1, $arr3));
$diff3 = count(array_diff($arr3, $arr1, $arr2));
// 找出不同项数量最少的数组作为结果
$min_diff = min($diff1, $diff2, $diff3);
if ($min_diff == $diff1) {
$result = $arr1;
} elseif ($min_diff == $diff2) {
$result = $arr2;
} else {
$result = $arr3;
}
// 输出结果
echo implode(',', $result); // 输出1,2,3,4,5
```
上述代码中,array_diff()函数用于找出每个数组中与其他数组不同的数字或组合,然后使用count()函数计算不同项的数量。最后选择不同项数量最少的数组作为结果。如果三个数组中有两个或多个数组不同项数量相等,则选择第一个满足条件的数组作为结果。最后使用implode()函数将数组转换为字符串并输出结果。
若干个不同长度数组同顺序对比得到与原数组不同的最小数字或组合
您可以使用PHP中的array_diff()函数来找出多个数组中的不同项,并结合min()函数来找到其中的最小值。具体实现代码如下:
```
$arr1 = array(1, 2, 3, 4, 5);
$arr2 = array(2, 3, 6, 7, 8);
$arr3 = array(3, 4, 5, 9, 10);
// 找出不同项并取最小值
$diff = min(array_diff($arr1, $arr2, $arr3));
// 输出结果
echo $diff; // 输出1
```
上述代码中,array_diff()函数用于找出每个数组中与其他数组不同的数字或组合,然后使用min()函数取得这些数字或组合中的最小值。最后直接输出结果即可。如果没有不同项,则输出空字符串或0。