php怎么实现两个数组求交集算法

寻技术 PHP编程 2023年07月12日 62

本文小编为大家详细介绍“php怎么实现两个数组求交集算法”,内容详细,步骤清晰,细节处理妥当,希望这篇“php怎么实现两个数组求交集算法”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

首先,创建两个待比对的数组$a和$b:

$a = array(1, 2, 3, 4, 5);
$b = array(3, 4, 5, 6, 7);

PHP中内置了一个求交集的函数

array_intersect()
。通过该函数,我们可以得到两个数组的交集:
$intersection = array_intersect($a, $b);

上面的代码中,

$intersection
即为两个数组的交集。打印
$intersection
的值,我们可以看到结果为:
array(3, 4, 5)

除了使用

array_intersect()
之外,我们还可以使用更加普适的循环求解方法。具体的实现流程如下:
  1. 声明一个空数组$common。

  2. 循环数组$a中的每个元素,判断其是否在数组$b中存在。

  3. 如果存在,则将该元素添加到$common数组中。

下面是具体实现的代码实例:

$a = array(1, 2, 3, 4, 5);
$b = array(3, 4, 5, 6, 7);

$common = array();

foreach ($a as $key => $value) {
    if (in_array($value, $b)) {
        $common[] = $value;
    }
}

print_r($common);

上述代码中使用了

in_array()
函数来判断$a数组中的每个元素是否在$b数组中存在。如果存在,则将其添加到$common数组中。最后打印
$common
数组的值,可以得到和
array_intersect()
函数一样的结果:
array(3, 4, 5)
关闭

用微信“扫一扫”