怎么快速的删除数组中重复的值

如果你用php,可以使用array_flip()这个函数,效率会比array_unique()高出5倍左右。

比如你有一个数组$arr

$arr = array_flip(array_flip($arr));

array_flip也可用于求数组差集,效率会比array_diff()高五倍左右。

比如你有两个数组:$arr1和$arr2

function array_different($arr1,$arr2) {

    $arr2=array_flip($arr2);//将数组键值调换

    foreach($arr1 as $key=>$val) {

        if(isset($arr2[$val])) {

            unset($arr1[$key]);

        }

    }

    return  $arr1;

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • PHP数组常用函数分类整理 一、数组操作的基本函数 数组的键名和值 array_values($arr); 获得数...
    衡阿大阅读 1,885评论 0 4
  • 一、数组操作的基本函数 数组的键名和值 array_values($arr);获得数组的值,返回含所有值的索引数组...
    zshanjun阅读 4,158评论 0 2
  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 14,349评论 0 33
  • 要访问一个变量的内容,可以直接使用其名称。如果该变量是一个数组,可以使用变量名称和关键字或索引的组合来访问其内容。...
    恩德_b0c2阅读 3,030评论 0 0
  • 定义 php中的数组array就是一个有序映射,把 value(值) 关联到 key(键)。 array()函数声...
    peakcool阅读 4,055评论 3 21