重复识别算法

时间:2015-09-22 06:53:11

标签: algorithm

而不是有两个for循环:首先从(var = i)1到输入数组的长度-1,第二个从i到length(使用var k)然后比较每个数组[i] == array [k ],如果找不到相同的对,则返回true,如果未找到则返回false。

只有一个数组用作此算法的单个参数。

这仍然可以优化吗?

1 个答案:

答案 0 :(得分:0)

根据内存限制,有几种方法可以解决这个问题。

使用常量内存,您可以对2个数组O(nlogn)进行排序,并将数组放在一起,如果数字较小则推进指针。这将是O(n)。总计为O(nlogn)。

如果你可以使用O(n)内存,你可以从第一个数组(O(n))创建一个哈希集,并遍历第二个并在集合包含第二个数组中的数字时中断。这将是N * O(1),即O(n)。