【发布时间】:2013-02-03 08:45:44
【问题描述】:
我在一次求职面试中被问到这个问题,我一直想知道正确的答案。
您有一个从 0 到 n-1 的数字数组,其中一个数字被删除,并替换为数组中已有的数字,该数字与该数字重复。我们如何才能及时检测到这个重复O(n)?
例如,4,1,2,3 的数组将变为 4,1,2,2。
时间O(n2)的简单解决方法是使用嵌套循环来查找每个元素的重复项。
【问题讨论】:
-
不必排序
-
忘记了一个元素被替换了...用我的方法以[替换的数字] xor [重复的数字]结束...
-
大声笑,所有的解决方案都有或多或少相同的方法......
-
是否有社区可以讨论此类问题?