百度二面经历,与大家分享
面试开始,问了些无关痛痒的话,然后面试官说了句,你数学怎么样。我说还行,然后就说了句:“我最喜欢数学题,我们来做几个数学题吧”,然后我就开始悲剧了。
第一题,任意给一个数,试证明这个数的某个倍数的十进制表示是01串,比如3的倍数111是二进制表示,5的倍数10是二进制表示,等等。
第二题,素数有无穷多个,请问是怎么证明的。
第三题,给一个很大的数组,里面有两个数只出现过一次,其他数都出现过两次,把这两个数找出来。
我开始说了排序和哈希表,他问我还有没有更好的方法,然后我说用异或,异或了半天没弄出来。
第四题,把一个链表逆过来,要求空间复杂度O(1),这个算简单的。
至此我的二面就此结束,数学题惨不忍睹,没思及此,伤心欲绝。
各位有什么好的方法请不吝指教。