2012百度實習生招聘面試題

2021-08-26 21:55:40 字數 1891 閱讀 2551

一面:

第一題、任意給乙個數,試證明這個數的某個倍數的十進位制表示是01串,比如3的倍數111是二進位制表示,5的倍數10是二進位制表示,等等。

假設序列1,11,111,1111…用a1~an標識,下腳標n即為1的個數,如:a1=1,a2=11,a3=111…

其中沒有乙個是n的倍數,即ak mod n不等於0(k屬於1~n),並且ak mod n的餘數各不相同,設它們為a1,a2,a3,…,an,但ak mod n的餘數最多只有n-1個不同,則由鴿巢原理可知,a1,a2,a3,…,an中必有兩個相同,即ai=aj(j>i),則aj-ai=0(mod n),aj-ai即為所求的0和1組成的十進位制數m,得證。

第二題、證明素數有無窮多個。

假若素數只有有限多個,設最大的乙個是p,從2到p的全體素數是:

2,3,5,7,11……,p。

所有的素數都在這裡,此外再沒有別的素數了。

現在,我們來考察上面從2到p的全體素數相乘、再加上1這個數,設它是a,即

a=2×3×5×7×11×……×p+1。

a是乙個大於1的正整數,它不是素數,就是合數。

如果a是素數,那麼,就得到了乙個比素數p還要大的素數,這與素數p是最大素數的假設矛盾。

如果a是合數,那麼,它一定能夠被某個素數整除,設它能被g整除。

因為a被從2到p的任何乙個素數除,餘數都是1,就是都不能整除,而素數g是能整除a的,所以素數g不在從2到p的全體素數之中。這說明素數g是乙個比素數p更大的素數,這又與p是最大的素數的假設矛盾。

上面的證明否定了素數只有有限多個的假定,這就證明了素數是無窮多個。

第三題、給乙個很大的陣列,裡面有兩個數隻出現過一次,其他數都出現過兩次,把這兩個數找出來。

很簡單,根據所有數的異或結果,將數字分為兩組,然後找出這兩個數。前面我的blog裡有這個題的介紹的。

第四題、把乙個鍊錶逆過來,要求空間複雜度o(1),這個算簡單的。

/*

*************************=

功能:鍊錶逆序

(鍊錶的頭變成鍊錶的尾,鍊錶的尾變成頭)

返回:指向煉表表頭的指標

*************************=

*/struct node *reverse (struct node *head)

head = p1;

return head;

}

二面:1、是如何統計**行數以及注釋的行數,並寫出具體的實現**。

**行數是按照\n數的,行注釋//需要注意//...\n算乙個注釋,但注意//...\n之間的//與/**/不算注釋。

/**/要注意/* /* */ 等於乙個注釋, 也就是一旦遇見/*之後就要記下來,一直匹配到*/才算乙個完整的注釋,中間的內容隨便它是什麼,包括//可能也巢狀在其中。

2、要求用最快的速度求兩個陣列的交集,提示陣列中的元素是無序的。寫出具體的實現**。

如果雜湊真的是o(1)的,那麼可以達到o(n+m),否則就是nlogn + mlogm。

3、寫程式,將乙個浮點數轉化為字串。。

先將浮點數賦值給乙個int型別的整數,然後分別將整數部分、小數部分轉化為字串就可以了。

三面:1、給定兩個排好序的陣列a和b,他們中的元素個數都是n,求他們所有元素的中位數。要求:時間複雜度為o(logn),空間複雜度為o(1)。(二分查詢)

實現**

2、有兩個陣列a、b,大小都為n,陣列中元素的值是整數型別、無序;要求:通過交換a,b中的元素,使陣列a元素的和與陣列b元素的和之間的差最小?

3、對已排好序的陣列a,一般來說可用二分查詢可以很快找到。現有一特殊陣列a,它是迴圈遞增的,如a=,

試在這樣的陣列中找一元素x,看看是否存在。

請寫出你的演算法,必要時可寫偽**,並分析其空間、時間複雜度。

實現**

2012百度實習生招聘面試題

一面 第一題 任意給乙個數,試證明這個數的某個倍數的十進位制表示是01串,比如3的倍數111是二進位制表示,5的倍數10是二進位制表示,等等。假設序列1,11,111,1111 用a1 an標識,下腳標n即為1的個數,如 a1 1,a2 11,a3 111 其中沒有乙個是n的倍數,即ak mod n...

2012 百度實習生面試題

一面 第一題 任意給乙個數,試證明這個數的某個倍數的十進位制表示是01串,比如3的倍數111是二進位制表示,5的倍數10是二進位制表示,等等。第二題 證明素數有無窮多個。第三題 給乙個很大的陣列,裡面有兩個數隻出現過一次,其他數都出現過兩次,把這兩個數找出來。void getnum int a,in...

百度2011實習生招聘筆試題

一 簡答題 1 extern c 是什麼意思,作用是什麼?2 至少說出兩個設計模式,闡述內容及其適用情況,最好有偽 3 tcp ip中的time wait是什麼意思?在什麼情況下會出現,簡述其好處和壞處。二 演算法與程式設計 1 某系統每天要執行n個任務 n 1000 任務之間存在複雜的依賴關係,如...