微軟十五道面試題
1、有乙個整數陣列,請求出兩兩之差絕對值最小的值,
記住,只要得出最小值即可,不需要求出是哪兩個數。
2、寫乙個函式,檢查字元是否是整數,如果是,返回其整數值。
(或者:怎樣只用4行**編寫出乙個從字串到長整形的函式?)
3、給出乙個函式來輸出乙個字串的所有排列。
4、請編寫實現malloc()記憶體分配函式功能一樣的**。
給出乙個函式來複製兩個字串a和b。字串a的後幾個位元組和字串b的前幾個位元組重疊。
5、怎樣編寫乙個程式,把乙個有序整數陣列放到二叉樹中?
6、怎樣從頂部開始逐層列印二叉樹結點資料?請程式設計。
7、怎樣把乙個鍊錶掉個順序(也就是反序,注意鍊錶的邊界條件並考慮空鍊錶)?
8、請編寫能直接實現int atoi(const char * pstr)函式功能的**。
9、程式設計實現兩個正整數的除法
程式設計實現兩個正整數的除法,當然不能用除法操作符。
// return x/y.
int div(const int x, const int y)
10、在排序陣列中,找出給定數字的出現次數
比如 [1, 2, 2, 2, 3] 中2的出現次數是3次。
11、平面上n個點,每兩個點都確定一條直線,
求出斜率最大的那條直線所通過的兩個點(斜率不存在的情況不考慮)。時間效率越高越好。
12、乙個整數數列,元素取值可能是0~65535中的任意乙個數,相同數值不會重複出現。0是例外,可以反覆出現。
請設計乙個演算法,當你從該數列中隨意選取5個數值,判斷這5個數值是否連續相鄰。
注意:- 5個數值允許是亂序的。比如: 8 7 5 0 6
- 0可以通配任意數值。比如:8 7 5 0 6 中的0可以通配成9或者4
- 0可以多次出現。
- 複雜度如果是o(n2)則不得分。
13、設計乙個演算法,找出二叉樹上任意兩個結點的最近共同父結點。
複雜度如果是o(n2)則不得分。
14、一棵排序二叉樹,令 f=(最大值+最小值)/2,
設計乙個演算法,找出距離f值最近、大於f值的結點。
複雜度如果是o(n2)則不得分。
15、乙個整數數列,元素取值可能是1~n(n是乙個較大的正整數)中的任意乙個數,相同數值不會重複出現。
設計乙個演算法,找出數列中符合條件的數對的個數,滿足數對中兩數的和等於n+1。
複雜度最好是o(n),如果是o(n2)則不得分。
谷歌八道面試題
16、正整數序列q中的每個元素都至少能被正整數a和b中的乙個整除,現給定a和b,需要計算出q中的前幾項,例如,當a=3,b=5,n=6時,序列為3,5,6,9,10,12
(1)、設計乙個函式void generate(int a,int b,int n ,int * q)計算q的前幾項
(2)、設計測試資料來驗證函式程式在各種輸入下的正確性。
17、有乙個由大小寫組成的字串,現在需要對他進行修改,將其中的所有小寫字母排在答謝字母的前面(大寫或小寫字母之間不要求保持原來次序),如有可能盡量選擇時間和空間效率高的演算法 c語言函式原型void proc(char *str) 也可以採用你自己熟悉的語言
18、如何隨機選取1000個關鍵字
給定乙個資料流,其中包含無窮盡的搜尋關鍵字(比如,人們在谷歌搜尋時不斷輸入的關鍵字)。如何才能從這個無窮盡的流中隨機的選取1000個關鍵字?
19、判斷乙個自然數是否是某個數的平方
說明:當然不能使用開方運算。
20、給定能隨機生成整數1到5的函式,寫出能隨機生成整數1到7的函式。
21、1024! 末尾有多少個0?
22、有5個海盜,按照等級從5到1排列,最大的海盜有權提議他們如何分享100枚金幣。
但其他人要對此表決,如果多數反對,那他就會被殺死。
他應該提出怎樣的方案,既讓自己拿到盡可能多的金幣又不會被殺死?
(提示:有乙個海盜能拿到98%的金幣)
23、google2009華南地區筆試題
給定乙個集合a=[0,1,3,8](該集合中的元素都是在0,9之間的數字,但未必全部包含),
指定任意乙個正整數k,請用a中的元素組成乙個大於k的最小正整數。
比如,a=[1,0] k=21 那麼輸出結構應該為100。
百度三道面試題
24、用c語言實現乙個revert函式,它的功能是將輸入的字串在原串上倒序後返回。
25、用c語言實現函式void * memmove(void *dest, const void *src, size_t n)。memmove
函式的功能是拷貝src所指的記憶體內容前n個位元組到dest所指的位址上。
分析:由於可以把任何型別的指標賦給void型別的指標,這個函式主要是實現各種資料型別的拷貝。
26、有一根27厘公尺的細木桿,在第3厘公尺、7厘公尺、11厘公尺、17厘公尺、23厘公尺這五個位置上各有乙隻螞蟻。
木桿很細,不能同時通過乙隻螞蟻。開始時,螞蟻的頭朝左還是朝右是任意的,它們只會朝前走或調頭,但不會後退。
當任意兩隻螞蟻碰頭時,兩隻螞蟻會同時調頭朝反方向走。假設螞蟻們每秒鐘可以走一厘公尺的距離。
編寫程式,求所有螞蟻都離開木桿的最小時間和最大時間。
騰訊七道面試題
27、請定義乙個巨集,比較兩個數a、b的大小,不能使用大於、小於、if語句
28、兩個數相乘,小數點後位數沒有限制,請寫乙個高精度演算法
29、有a、b、c、d四個人,要在夜裡過一座橋。他們通過這座橋分別需要耗時1、2、5、10分鐘,只有一支手電,並且同時最多只能兩個人一起過橋。請問,如何安排,能夠在17分鐘內這四個人都過橋?
30、有12個小球,外形相同,其中乙個小球的質量與其他11個不同,
給乙個天平,問如何用3次把這個小球找出來,並且求出這個小球是比其他的輕還是重
31、在乙個檔案中有 10g 個整數,亂序排列,要求找出中位數。記憶體限制為 2g。只寫出思路即可。
32、乙個檔案中有40億個整數,每個整數為四個位元組,記憶體為1gb,寫出乙個演算法:求出這個檔案裡的整數裡不包含的乙個整數
33、騰訊伺服器每秒有2w個qq號同時上線,找出5min內重新登入的qq號並列印出來。
雅虎三道面試題
34、程式設計實現:把十進位制數(long型)分別以二進位制和十六進製制形式輸出,不能使用printf系列
35、程式設計實現:找出兩個字串中最大公共子字串,如"abccade","dgcadde"的最大子串為"cad"
36、有雙向迴圈鍊錶結點定義為:
struct node
;有兩個雙向迴圈鍊錶a,b,知道其頭指標為:pheada,pheadb,請寫一函式將兩煉表中data值相同的結點刪除。
聯想五道筆試題
37、1)、設計函式 int atoi(char *s)。
2)、int i=(j=4,k=8,l=16,m=32); printf(「%d」, i); 輸出是多少?
3)、解釋區域性變數、全域性變數和靜態變數的含義。
4)、解釋堆和棧的區別。
5)、論述含引數的巨集與函式的優缺點。
38、順時針列印矩陣
題目:輸入乙個矩陣,按照從外向裡以順時針的順序依次列印出每乙個數字。
例如:如果輸入如下矩陣:
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
則依次列印出數字1, 2, 3, 4, 8, 12, 16, 15, 14, 13, 9, 5, 6, 7, 11, 10。
分析:包括autodesk、emc在內的多家公司在面試或者筆試裡採用過這道題。
39、對稱子字串的最大長度
題目:輸入乙個字串,輸出該字串中對稱的子字串的最大長度。
比如輸入字串「google」,由於該字串裡最長的對稱子字串是「goog」,因此輸出4。
分析:可能很多人都寫過判斷乙個字串是不是對稱的函式,這個題目可以看成是該函式的加
強版。40、用1、2、2、3、4、5這六個數字,寫乙個main函式,列印出所有不同的排列,
如:512234、412345等,要求:"4"不能在第三位,"3"與"5"不能相連.
41、微軟面試題
乙個有序數列,序列中的每乙個值都能夠被2或者3或者5所整除,1是這個序列的第乙個元素。求第1500個值是多少?
網易五道遊戲筆試題
42、兩個圓相交,交點是a1,a2。現在過a1點做一直線與兩個圓分別相交另外一點b1,b2。
b1b2可以繞著a1點旋轉。問在什麼情況下,b1b2最長
43、smith夫婦召開宴會,並邀請其他4對夫婦參加宴會。在宴會上,他們彼此握手,
並且滿足沒有乙個人同自己握手,沒有兩個人握手一次以上,並且夫妻之間不握手。
然後mr. smith問其它客人握手的次數,每個人的答案是不一樣的。
求mrs smith握手的次數
44、有6種不同顏色的球,分別記為1,2,3,4,5,6,每種球有無數個。現在取5個球,求在一下
的條件下:
1、5種不同顏色,
2、4種不同顏色的球,
3、3種不同顏色的球,
4、2種不同顏色的球,
它們的概率。
45、有一次數學比賽,共有a,b和c三道題目。所有人都至少解答出一道題目,總共有25人。
在沒有答出a的人中,答出b的人數是答出c的人數的兩倍;單單答出a的人,比其他答出a的人
總數多1;在所有只有答出一道題目的人當中,答出b和c的人數剛好是一半。
求只答出b的人數。
46、從尾到頭輸出鍊錶
題目:輸入乙個鍊錶的頭結點,從尾到頭反過來輸出每個結點的值。鍊錶結點定義如下:
struct listnode
;分析:這是一道很有意思的面試題。該題以及它的變體經常出現在各大公司的面試、筆試題中。
47、金幣概率問題(威盛筆試題)
題目:10個房間裡放著隨機數量的金幣。每個房間只能進入一次,並只能在乙個房間中拿金幣。
乙個人採取如下策略:前四個房間只看不拿。隨後的房間只要看到比前四個房間都多的金幣數,
就拿。否則就拿最後乙個房間的金幣。?
微軟 谷歌 百度等公司經典面試100題
微軟十五道面試題 1 有乙個整數陣列,請求出兩兩之差絕對值最小的值,記住,只要得出最小值即可,不需要求出是哪兩個數。2 寫乙個函式,檢查字元是否是整數,如果是,返回其整數值。或者 怎樣只用4行 編寫出乙個從字串到長整形的函式?3 給出乙個函式來輸出乙個字串的所有排列。4 a 請編寫實現malloc ...
Google與百度的使用技巧
搜尋引擎 最大的特色是提供中文搜尋,它可能是最大的的中文資料庫。下面舉例介紹一下如何高效地使用搜尋引擎。關鍵字檢索 在主頁的檢索欄內輸入關鍵字串,單擊 檢索 按鈕,搜尋引擎會搜尋中文分類條目 資料庫中的 資訊以及新聞資料庫,搜尋完畢後將檢索的結果顯示出來,單擊某一鏈結檢視詳細內容。使用雙引號 進行片...
論百度和google的區別之處
論和google的區別之處,好好寫一篇文章關於和google區別的的型別的文章,現在國內的市場份額太大,但是通常我們還是會關注google,所以呢,結合這幾年所看到的,了解到的,好好寫一篇說說和google的區別。和google是兩個不同的搜尋引擎,中國獨大,google世界獨大,利用好這兩個搜尋引...