
1 skydiver May 15, 2014 异或 |
2 dennisyang May 15, 2014 分块hash? |
3 john990 OP |
7 bengol May 15, 2014 为什么会多了一个? |
10 txx May 15, 2014 |
11 jsonline May 16, 2014 对啊,为什么会多一个,搞清楚这个问题价值会更大吧。 |
12 wy315700 May 16, 2014 把所有的数异或一下 最后的结果就是那个多出来的数 简单的面试题 |
13 stevenyou May 16, 2014 sum(一百万零一个) - sum(一百万个数) 得到的结果就是多的那一个 |
14 stevenyou May 16, 2014 效率是O(n) |
17 stevenyou May 16, 2014 @cassyfar 是有overflow的问题,但是从两个数可以看出来的。如果是32bit int sum(一百万零一个) = -32768 sum(一百万个数) = 32767 可以知道多出的那个数是1 当然了,xor的方法是最好的。 |
20 riaqn May 16, 2014 |
22 Virtao 之前V2EX上就有个类似的题目,再次分享我的总结: http://blog.virtao.org/articles/163.html 另外严重同意 @skydiver 的说法,这类题目玩玩可以,当面试题没意义。万一碰到个大牛恰好这个题目没碰到过呢? |