多个数组同顺序对比取得与原所有数组不重复的所有数字,并自动填充为出现的制定范围内的数字
时间: 2024-02-18 13:04:04 浏览: 41
以下是一个实现该功能的 PHP 代码:
```php
function getUniqueNumbers($arrays, $min, $max) {
$allNumbers = array_merge(...$arrays); // 将多个数组合并为一个数组
sort($allNumbers); // 对数组进行排序
$uniqueNumbers = array_unique($allNumbers); // 获取所有不重复的数字
$missingNumbers = array();
$currentNumber = $min;
foreach ($uniqueNumbers as $number) {
while ($number > $currentNumber && $currentNumber <= $max) {
$missingNumbers[] = $currentNumber; // 将缺失的数字添加到数组中
$currentNumber++;
}
$currentNumber = $number + 1; // 更新当前数字
}
// 将剩余的缺失数字添加到数组中
while ($currentNumber <= $max) {
$missingNumbers[] = $currentNumber;
$currentNumber++;
}
return $missingNumbers;
}
// 示例用法
$arrays = [[1, 2, 4], [1, 3, 4, 5], [2, 3, 5]];
$missingNumbers = getUniqueNumbers($arrays, 1, 5);
print_r($missingNumbers); // 输出 [6]
```
该函数接受一个包含多个数组的数组 `$arrays`,以及一个最小值 `$min` 和最大值 `$max`。函数首先将所有数组合并为一个数组,并对其进行排序和去重,以获取所有不重复的数字。然后,函数遍历这些数字,并将缺失的数字添加到一个新的数组 `$missingNumbers` 中。最后,函数返回所有缺失的数字。
阅读全文