• php 求两个数组的差集应该注意的事情


    对于 phper 来说 array_diff 这个函数应该知道它的用途,获取两个数组的差集,我理解中的差集是这样的

    但是执行下代码会发现结果并不是

    <?php
    $a = [1,2,3,4,5];
    $b = [3,4,5,6,7];
    $c = array_diff($a,$b);
    print_r($c); //输出 Array ( [0] => 1 [1] => 2 )

    我开始以为应该是会输出数组  [1,2,6,7] 才对的但是实际结果却不是,于是去翻下文档:

    如图人家说的已经很清楚啦,是将后面的所有数组与 array1 作比较返回 在array1 中但是不在 其他 array 里的值。如果我们一定要实现图一那种求差集的方法的话就要这样做

    <?php
    $a = [1,2,3,4,5];
    $b = [3,4,5,6,7];
    $c = array_diff($a,$b);
    $d = array_diff($b,$a);
    $e = array_merge($c,$d);
    print_r($e); // 输出 Array ( [0] => 1 [1] => 2 [2] => 6 [3] => 7 )
  • 相关阅读:
    todo-list
    codeforces 794 (#414 DIV1+DIV2)
    2018bnu校赛总结
    codeforces 743D
    HDU-2196 Computer (树形DP)
    HDU- 1005 Number Sequence(矩阵快速幂)
    HDU- 4000 Fruit Ninja(树状数组)
    codeforces 505C
    codeforces 286B
    codeforces 3D
  • 原文地址:https://www.cnblogs.com/itsuibi/p/10816056.html
Copyright © 2020-2023  润新知