一面:

第一题、任意给一个数,试证明这个数的某个倍数的十进制表示是01串,比如3的倍数111是二进制表示,5的倍数10是二进制表示,等等。

第二题、证明素数有无穷多个。
    
第三题、给一个很大的数组,里面有两个数只出现过一次,其他数都出现过两次,把这两个数找出来。

第四题、把一个链表逆过来,要求空间复杂度O(1),这个算简单的。

 

二面:

1、是如何统计代码行数以及注释的行数,并写出具体的实现代码。

2、要求用最快的速度求两个数组的交集,提示数组中的元素是无序的。写出具体的实现代码。

3、写程序,将一个浮点数转化为字符串。。

 

三面:

1、给定两个排好序的数组A和B,他们中的元素个数都是n,求他们所有元素的中位数。要求:时间复杂度为O(logn),空间复杂度为O(1)。

2、对已排好序的数组A,一般来说可用二分查找可以很快找到。现有一特殊数组A[],它是循环递增的,如A[]={ 17 19 20 25 1 4 7 9},
试在这样的数组中找一元素x,看看是否存在。
请写出你的算法,必要时可写伪代码,并分析其空间、时间复杂度。

2 对 “百度实习生面试题”的想法;

评论被关闭。