最快速度求两个数组之交集算法

想到的一个方法。时间复杂度算做O(n)?

 

<?php
    $a=[1,2,34,324,3,23,23,323];
    $b=[23,213,41,1,32,324];
    $new_a=$last_arr=array();
    for($i=0;$i<count($a);$i++){
        $new_a[$a[$i]]=1;
    }
   
    for($i=0;$i<count($b);$i++){
        if($new_a[$b[$i]]==1){
            array_push($last_arr,$b[$i]);
        }
    }
    print_r($last_arr);
?>

 

posted @ 2018-08-23 04:03  cnlh  阅读(1083)  评论(0编辑  收藏  举报