在一组唯一数字中查找重复的数字

时间:2016-07-20 16:08:17

标签: arrays

有一个数组,除了一个数字(比如魔术数字)都是唯一的。神奇的数字 重复自身超过阵列大小的一半。例如2,10,10,10,3。找不到魔法数字 使用任何额外空间而不进行排序。现在有任何方法可以在O(n)中完成。

1 个答案:

答案 0 :(得分:2)

检查每个元素与其邻居的关系,如果有的话,那么你找到了这个数字。 O(N)

如果第一次测试没有找到该号码,那么您处于以下情况:

10,2,10,3,10.

在这种情况下,数组中的第一个数字是幻数。 O(1)