有没有复杂度为O(n)的二维数组合并去重算法

(亚洲博彩十大网站排名)

有没有复杂度为On的二维数组合并去重算法

$a = [ [id=>1], [id=>2], [id=>3], [id=>4], [id=>5], [id=>6]
];
$b = [ [id=>5], [id=>6], [id=>7],
];
$c = [ [id=>8], [id=>9]
]; function array_unique_merge { $params = func_get_args; $result = []; $hashmap = []; $arr_count = count$params; for$i = 0; $i<$arr_count; $i++ { foreach$params[$i] as $key => $val { $md5 = md5json_encode$val; if !isset$hashmap[$md5] { $hashmap[$md5] = true; $result[] = $val; } } } return $result;
} print_rarray_unique_merge$a, $b, $c;

我只是贴出来一下我的想法可以这么做。如果n指的是所有数组的元素数量之和。

这个必须要用2循环,对n的定义应该是多个关联数组的元素之和,双循环就算是On了

serialize以后当作hash比较,这个思路呢?手机我就不写代码了…

发表评论

电子邮件地址不会被公开。 必填项已用*标注