微軟面試100題

阮一峰發表於2007-01-28

上流傳一份微軟公司面試的考題,共100道,真實性不可考。

這種題目用來面試,是否科學,那就智者見智了。在我看來,它們更像遊戲。轉貼如下,可供閒時娛樂。

=====================

1為什麼下水道的井蓋是圓的?
2美國有多少輛車?(一個常見的類似問題是:美國有多少家加油站?)
3美國有多少個下水道井蓋?

4你讓某些人為你工作了七天,你要用一根金條作為報酬。這根金條要被分成七塊。你必須在每天的活幹完後交給他們一塊。如果你只能將這根金條切割兩次,你怎樣給這些工人分?
  
5一列火車以每小時15英里的速度離開洛杉磯,朝紐約進發。另外一列火車以每小時20英里的速度離開紐約,朝洛杉磯進發。如果一隻每小時飛行25英里的鳥同時離開洛杉磯,在兩列火車之間往返飛行,請問當兩列火車相遇時,鳥飛了多遠?
  
6假設一張圓盤像唱機上的唱盤那樣轉動。這張盤一半是黑色,一半是白色。假設你有數量不限的一些顏色感測器。要想確定圓盤轉動的方向,你需要在它周圍擺多少個顏色感測器?它們應該被擺放在什麼位置?
  
7假設時鐘到了12點。注意時針和分針重疊在一起。在一天之中,時針和分針共重疊多少次?你知道它們重疊時的具體時間嗎?
  
8你有兩個罐子,分別裝著50個紅色的玻璃球和50個藍色的玻璃球。隨意拿起一個罐子,然後從裡面拿出一個玻璃球。怎樣最大程度地增加讓自己拿到紅球的機會?利用這種方法,拿到紅球的機率有多大?
  
9中間只隔一個數字的兩個奇數被稱為奇數對,比如17和19。證明奇數對之間的數字總能被6整除(假設這兩個奇數都大於6)。現在證明沒有由三個奇陣列成的奇數對。
  
10一個屋子有一個門(門是關閉的)和3盞電燈。屋外有3個開關,分別與這3盞燈相連。你可以隨意操縱這些開關,可一旦你將門開啟,就不能變換開關了。確定每個開關具體管哪盞燈。
11假設你有8個球,其中一個略微重一些,但是找出這個球的惟一方法是將兩個球放在天平上對比。最少要稱多少次才能找出這個較重的球?
  
12假設你站在鏡子前,抬起左手,抬起右手,看看鏡中的自己。當你抬起左手時,鏡中的自己抬起的似乎是右手。可是當你仰頭時,鏡中的自己也在仰頭,而不是低頭。為什麼鏡子中的影像似乎顛倒了左右,卻沒有顛倒上下?
  
13 你有4瓶藥。每粒藥丸的重量是固定的,不過其中有一瓶藥受到了汙染,藥丸的重量發生了變化,每個藥丸增加了一點重量。你怎樣一下子測出哪瓶藥是遭到汙染的呢?
  
14下面玩一個拆字遊戲,所有字母的順序都被打亂。你要判斷這個字是什麼。假設這個被拆開的字由5個字母組成:
1. 共有多少種可能的組合方式?  
2. 如果我們知道是哪5個字母,那會怎麼樣?
3. 找出一種解決這個問題的方法。
  
15有4個女人要過一座橋。她們都站在橋的某一邊,要讓她們在17分鐘內全部透過這座橋。這時是晚上。她們只有一個手電筒。最多隻能讓兩個人同時過橋。不管是誰過橋,不管是一個人還是兩個人,必須要帶著手電筒。手電筒必須要傳來傳去,不能扔過去。每個女人過橋的速度不同,兩個人的速度必須以較慢的那個人的速度過橋。
  
第一個女人:過橋需要1分鐘;  
第二個女人:過橋需要2分鐘;   
第三個女人:過橋需要5分鐘;   
第四個女人:過橋需要10分鐘。
  
比如,如果第一個女人與第4個女人首先過橋,等她們過去時,已經過去了10分鐘。如果讓第4個女人將手電筒送回去,那麼等她到達橋的另一端時,總共用去了20分鐘,行動也就失敗了。怎樣讓這4個女人在17分鐘內過橋?還有別的什麼方法?
  
16如果你有一個5夸脫的水桶和一個3夸脫的水桶,如何準確量出4夸脫的水?
  
17你有一袋糖,有紅色的,藍色的,綠色的。閉上眼睛,拿出兩塊顏色一樣的糖,你需要拿多少次才能確保有兩塊顏色相同的?
  
18如果你有兩個桶,一個裝的是紅色的顏料,另一個裝的是藍色的顏料。你從藍色顏料桶裡舀一杯,倒入紅色顏料桶,再從紅色顏料桶裡舀一杯倒入藍顏料桶。兩個桶中紅藍顏料的比例哪個更高?透過算術的方式來證明這一點。
  
運算
  
19連結表和陣列之間的區別是什麼?
  
20做一個連結表,你為什麼要選擇這樣的方法?
21選擇一種演算法來整理出一個連結表。你為什麼要選擇這種方法?現在用o(n)時間來做。
  
22說說各種股票分類演算法的優點和缺點。
  
23用一種演算法來顛倒一個連結表的順序。現在在不用遞迴式的情況下做一遍。
  
24用一種演算法在一個迴圈的連結表裡插入一個節點,但不得穿越連結表。
  
25用一種演算法整理一個陣列。你為什麼選擇這種方法?
  
26用一種演算法使通用字串相匹配。
  
27顛倒一個字串。最佳化速度。最佳化空間。
  
28顛倒一個句子中的詞的順序,比如將"我叫克麗絲"轉換為"克麗絲叫我",實現速度最快,移動最少。
  
29找到一個子字串。最佳化速度。最佳化空間。
  
30比較兩個字串,用o(n)時間和恆量空間。
  
31假設你有一個用1001個整陣列成的陣列,這些整數是任意排列的,但是你知道所有的整數都在1到1000(包括1000)之間。此外,除一個數字出現兩次外,其他所有數字只出現一次。假設你只能對這個陣列做一次處理,用一種演算法找出重複的那個數字。如果你在運算中使用了輔助的儲存方式,那麼你能找到不用這種方式的演算法嗎?
  
32不用乘法或加法增加8倍。現在用同樣的方法增加7倍。
  
應用
  
33如何將計算機技術應用於一幢100層高的辦公大樓的電梯系統上?你怎樣最佳化這種應用?工作日時的交通、樓層或時間等因素會對此產生怎樣的影響?
  
34你如何對一種可以隨時存在檔案中或從因特網上複製下來的作業系統實施保護措施,防止被非法複製?
  
35你如何重新設計自動取款機?
  
36假設我們想透過電腦來操作一臺微波爐,你會開發什麼樣的軟體來完成這個任務?
  
37你如何為一輛汽車設計一臺咖啡機?
  
38如果你想給微軟的word系統增加點內容,你會增加什麼樣的內容?
  
39你會給只有一隻手的使用者設計什麼樣的鍵盤?
  
40你會給失聰的人設計什麼樣的鬧鐘?
41如果你有一個許多部件可以拆卸的時鐘,你將它一塊塊拆開,但是沒有記住是怎樣拆的。然後你將各個零件重新組裝起來,最後發現有三個重要零件沒有放進去。這時你如何重新組裝這個時鐘?

42如果你需要學習一門新的計算機語言,你會怎樣做?
  
43假設由你負責設計比爾·蓋茨的衛生間。當然,錢不成問題,但是你不可以和比爾談。你會怎樣做?
  
44到目前為止,你遇到的最難回答的問題是什麼?
  
45如果微軟公司說,我們願意投資500萬美元用來開發你提出的方案。那麼你會做什麼?為什麼?
  
46如果你將世界上所有的計算機制造商召集起來,告訴他們必須要做一件事,你會讓他們做什麼事?
  
47如果你在五年內會得到一筆獎金,你認為會是因為什麼?關注你的成績的人會是誰?
  
48你如何教自己的奶奶使用微軟excel表格系統?
  
49為什麼當我們在任何一家賓館開啟熱水龍頭時,熱水會馬上流出來? 50你為什麼想在微軟工作?
  
51假設你回到家,進入自己的房間,開啟電燈開關,可是一點反應都沒有----燈沒有亮。這時,你在判斷問題出在哪裡時,會依次採取怎樣的做法?

請在a、b、c、d中選擇正確的答案。
  
52下列哪項敘述是錯誤的?
(a)主觀主義者可能也是相對論者。
(b)相對論者也可能是客觀主義者。 
(c)絕對論者也可能是主觀主義者。 
(d)客觀主義者也可能是絕對論者。
  
53如果就像薩特的存在主義所說的,"人要為自己的熱情負責",那麼無論我們做什麼,我們都:
(a)違背了自己的意願。
(b)沒有經過思考。  
(c)是自由的。   
(d)是出於對上帝的蔑視。
  
54薩特宣稱,對人類來說,"存在先於本質",換言之:
(a)當人們理智的時候,他們才符合人類的本質。  
(b)根據上帝的指示,人們在本質上是註定要存在的。  
(c)人類可以自由選擇,甚至選擇不以任何方式做任何事。  
(d)人類是自由的,可以透過自己的行為而成為自己所願意成為的任何角色。
  
55薩特說,"根本沒有人類本性這種東西",他的意思是:
(a)作為具有自我意識的生命,我們可以決定而且確實決定了自己成為一種什麼樣的生命。
(b)人類沒有辦法選擇是痛苦還是絕望。
(c)人類不具有可以從在生物角度把他們歸為一個物種的遺傳特徵。
(d)存在主義認為上帝的存在只是道德判斷的先決基礎。
  
56康德說,一個行為符合義務並不能令它成為道德行為,當執行者只為了盡義務或因為這是他的義務而做,他的行為才是道德行為。康德這樣說是為了表明:
(a)一個人行為的後果可能是好的也可能是壞的,一切取決於這個行為產生了多少快樂。 
(b)出於自由意願而做的行為永遠是道德行為。
(c)一個行為的道德價值是由執行者的動機決定的,不是由這個行為的結果決定的。
(d)出於自身利益的行為不同於根據準則而做的行為。
  
57康德認為,決定一個行為是否道德的關鍵是這個行為所依據的準則,而不是這個單獨的行為本身。因為:
(a)根據定義,一個個體行為是不可以被普遍化的。  
(b)我們的行為總是依據這樣或那樣的準則。  
(c)沒有準則,我們將無從知道應該怎樣做。  
(d)我們的準則是行為的客觀法則,是我們行事的基礎。
  
58根據康德的觀點,一項具有無法被成功普遍化的動機或目的的行為:
(a)根據結果的不同,可以是道德的或不道德的。  
(b)根據該行為是否被該人所在社會所接受,可以是道德的或不道德的。   
(c)是不道德的。  
(d)根據該行為是否出於自由意願,可以是道德的或不道德的。
  
59康德說,"我可以判斷其他所有有理性的人是否和我一樣有義務去做某件事",判斷依據是:
(a)某些行為是否被不同文化普遍接受。  
(b)其他人做和我一樣的行為是否得到好的結果。  
(c)這個行為在所有人看來都是好的。  
(d)我的行為的動機可以被普遍化,沒有被某些人牴觸或不被接受。
  
60行為實用主義者說,我們應該一直做那些能帶來最大幸福的事,即使這意味著違反道德原則。原則實用主義者不同意這種意見,說我們應該遵守道德原則,即使我們認為違背這些原則會產生更好的結果,因為:
(a)服從道德原則為社會整體帶來的幸福通常多於為少數例外者帶來的不幸福。   
(b)我們不應該成為任何道德原則的奴隸,道德只是個人選擇問題。   
(c)通常來說,為大多數人謀求最大幸福的行為並不總是符合道德的。   
(d)即使我們服從道德原則,也總難免造成某些人的不幸福。
  
61行為實用主義者指出,有時候違反某一道德準則能比遵守準則帶來更大的幸福。他們認為,在這種情況下,違反道德準則是允許的:
(a)只要保證下不為例。  
(b)只要這個行為所影響的人沒有感到不快。  
(c)只要實施行為者的動機或意圖是為了儘自己的義務而不計後果。  
(d)實用主義原則本身甚至要求人們這樣做。
  
62元帥領兵
  
元帥統領八員將,每將各分八個營,每營裡面擺八陣,每陣配置八先鋒,每個先鋒八旗頭,每個旗頭有八隊,每隊分設八個組,每組帶領八個兵。請你掐指算一算,元師共有多少兵?
  
63運算子號的妙用
  
在1、2、3、4、5、6、7、8、9這一串數字中間,加入運算子號"+"或"-",使其代數和等於99,按(1 ...... 9)可以有17種解,倒過來的後者(9 ...... 1)可以有11種解。有興趣的讀者,不妨一試。
  
64兩龜賽跑
有兩隻烏龜一起賽跑。甲龜到達10米終點線時,乙龜才跑到9米。現在如果讓甲龜的起跑線退後1米,這時兩龜再同時起跑比賽,問甲、乙兩龜是否同時到達終點?
  
65電視機的價格
  
麥克因工作繁忙,決定臨時請尼克來協助他工作。規定以一年為期限,一年的報酬為600美元與一臺電視機。可是尼克做了7個月後,因急事必須離開麥克,並要求麥克付給他應得的錢和電視機。由於電視機不能拆散付給他,結果尼克得到了150美元和一臺電視機。現在請你想一想:這臺電視機值多少錢?
  
66這塊石頭究竟有多重
有4個小孩看見一塊石頭正沿著山坡滾下來,便議論開了。
"我看這塊石頭有17公斤重,"第一個孩子說。
"我說它有26公斤,"第二個孩子不同意地說。
"我看它重21公斤",第三個孩子說。
"你們都說得不對,我看它的正確重量是20公斤,"第四個孩子爭著說。
  
他們四人爭得面紅耳赤,誰也不服誰。最後他們把石頭拿去稱了一下,結果誰也沒猜準。其中一個人所猜的重量與石頭的正確重量相差2公斤,另外兩個人所猜的重量與石頭的正確重量之差相同。當然,這裡所指的差,不考慮正負號,取絕對值。請問這塊石頭究竟有多重?
  
67三隻砝碼稱東西
  
現在有三種不同重量的標準砝碼1克、3克、9克。請問可以稱出多少不同物品的重量?在進行稱量時,要稱的東西與已知的標準砝碼可以任意地放在天平的兩盤之一。另外,每種砝碼都只有一隻,而且不準複製。
  
68稱米
現有米9公斤以及50克和200克的砝碼各一個。問怎樣在天平上只稱量三次而稱出2公斤米?
  
69比薩餅交易
在我最喜歡的那家比薩餅店中,10寸的比薩賣4.99美元。店主說,他們有一筆12寸比薩餅的交易,定價為每份5.39美元。請問:該店在這筆比薩餅交易中給予了買方多少折扣?
  
70.沙貝拉時裝精品屋
紐約伊沙貝拉時裝精品屋,新近從義大利購進了一件女式冬裝。這衣服的購入價格再加二成,是該店標出的銷售價。出於半個月內未賣出去,女老闆又將這個定價減去了一成,很快被一位漂亮小姐買走了。女老闆獲利400元。
請問,這件高檔女式冬裝購入價是多少?
  71.稱量罐頭
  
為罐頭工廠工作的送貨員a,給一家食品公司送了10箱菠蘿罐頭。每個罐頭重量是800克,每箱裝20個。正當他送完了貨,要回工廠的時候,接到了從工廠打來的電話,說這10箱中有一箱由於機器出了問題而混進了次品,每個罐頭缺50克的分量,要送貨員把這箱罐頭送回工廠以便更換。但是,怎樣從中找出到底哪一箱是次品呢?最需要的當然是秤,可是手邊又沒有。
  
正在這時,他忽然發現不遠的路旁有一臺自動稱量體重的機器,也就是投進去1元硬幣就可以稱量一次重量。他的口袋裡剛好就有一個1元硬幣。當然也就只能量一次。那麼他應該怎麼充分利用這隻有一次的機會,來找到那一箱不符合規格的產品呢?
  
72.按勞取酬
  
有一個農場主,僱用了兩個臨時工幫忙種小麥。其中一個叫做湯姆,是一個耕地能手,但是他不會播種;而另一個叫做尼克,他並不擅長於耕地,但是,他卻是播種的好手。這個農場主決定要種十公頃小麥,讓他們各自包一半,於是,湯姆從東頭開始耕地,而尼克從西頭開始耕地。耕一畝地湯姆只要用二十分鐘,而尼克卻需要四十分鐘,但是尼克播種的速度比湯姆要快三倍。
  
他們播種完工後,農場主按照他們的工作量給予他倆一共一百元的工錢。請問:他們應該怎麼樣分這份工錢才最合理?

73.四兄弟的年齡
  
一家有4個兄弟,他們4個的年齡乘起來的積為14。那麼,他們各自的年齡是多大?當然年齡應該是整數。
  
74.愛的程度
  
在一所鄉村學校中,一個剛剛畢業的男數學老師s很幸運地同時得到了兩個女教師a、b的青睞。s滿腦袋數字,在無法從兩者之中選擇的情況下,他只好對這兩位女教師說,"希望你們用數字或者數學公式,來表示你們對我的愛的程度。"
  
a說,"與b比起來,我是一百倍地愛你。"
b說,"a對你的感情當然沒有我對你的感情深。與a相比,我是一千倍地愛你。"
  
聽了她們深情的話語,不知為什麼數學老師s反而神情沮喪地說,"這不就等於說,你們兩個都是完全不愛我嗎?" 這究竟是怎麼回事?
  
75.爬樓梯
  
一位先生要到10層樓的第8層去辦事,不巧正趕上停電,電梯無法使用,他只能夠步行上樓。如果他從第1層爬到第4層需要用48秒,那麼請問,以同樣的速度走到第8層需要多少秒?
  
76.空姐分配物品
  
在一架飛機上,中間是一條過道,兩邊是座位,每一排為三人。兩位空姐a和b每人負責一邊,對每位旅客分配旅行物品。開始的時候,a給右邊的旅客發放了6份,此時,b過來對她說,左邊應該由a負責。於是a重新到左邊開始發放,b接著給右邊剩下的旅客發放物品,之後,又幫a發了15份,最後兩人同時結束工作。
  
請問:a和b誰發的多?多發了多少份? 生產中需要一段鐵鏈,庫房中只有五截每截只有三個鐵環的鐵鏈,這五截鐵鏈連起來的長度正好是所需要的。
  
問:在只切斷三個鐵環的情況下,怎樣將這五截三鐵環連起來?
  
77.巧分飛機票
  
旅行社剛剛為三位旅客預定了飛機票。這三位旅客是荷蘭人科爾、加拿大人伯託和英國人丹皮。他們三人一個去荷蘭,一個去加拿大,一個去英國。據悉科爾不打算去荷蘭,丹皮不打算去英國,伯託則既不去加拿大,也不去英國。
  
問:這三張飛機票分別應該是他們誰的?
  
78.白帽和黑帽
  
老師讓6名學生圍坐成一圈,另讓一名學生坐在中央,並拿出七頂帽子,其中四頂白色,三頂黑色。然後矇住七名學生的眼睛,並給坐在中央的學生戴一頂帽子,而只解開坐在圈上的六名學生的眼罩。這時,由於坐在中央的學生的阻擋,每個人只能看到五個人的帽子。老師說:"現在,你們七人猜一猜自己的頭上戴的帽子顏色。"大家靜靜地思索了好大一會。最後,坐在中央的、被矇住雙眼的學生舉手說:"我猜到了。"
  
問:中央的被矇住雙眼的學生帶的是什麼顏色的帽子?他是怎樣猜到的?
  
79.急中生智
  
有個農民挑了一對竹筐,趕集去買東西。當他來到一座獨木橋上,對面來了個孩子,他想退回去讓孩子先過橋,但是回身一看,後面也來了個孩子。正在進退兩難之際,農民急中生智,想了個巧辦法,使大家都順利地透過了獨木橋,而且三人之中誰也沒有後退過一步。
問:農民是用的什麼方法?
  
80.巧入房間
  
某地質勘探隊有12名隊員,他們同住在一棟樓的12個房間內。由於工作關係,資料不能集中,各人的房間內都有別人需要查對的資料。 這天,12位隊員又要外出作業了。臨行前,隊長對大家說:"在外出作業期間,12個人一起回來是不可能的,如有隊員回來查資料就困難了。現在我們們每個人都有開啟自己門鎖的兩把鑰匙,只准帶走其中一把鑰匙,餘下的一把不準掛在門上,因為不安全,每個房間的門窗也必須關嚴,大家想一想,怎樣才能使任何一個人回來都能開啟12個房間呢?"
  
問:如果你是隊員之一,你能想出辦法來嗎?
  
81.女兒的錯
  
父親打電話給女兒,要她替自己買一些生活用品,同時告訴她,錢放在書桌上的一個信封裡。女兒找到信封,看見上面寫著98,以為信封內有98元,就把錢拿出來,數也沒數放進書包裡。在商店裡,她買了90元的東西,付款時才發現,她不僅沒有剩下8元,反而差了4元。回到家裡,她把這事告訴了父親,懷疑父親把錢點錯了。父親笑著說,他並沒有數錯,錯在女兒身上。
問:女兒錯在什麼地方?
  
82.找硬幣
  
3個日本孩子翻衣兜,他們把兜裡所有的錢都掏出來,看看一共有多少錢。結果一共有320日元。其中有兩枚硬幣是100日元的,兩枚是50日元的,兩枚是10日元的。每一個孩子所帶的硬幣中沒有相同的。而且,沒帶100日元硬幣的孩子也沒帶10日元的硬幣,沒帶50日元硬幣的孩子也沒帶100日元的硬幣。你能弄清楚這3個日本孩子原來各自帶了什麼硬幣嗎?
  
83.入睡與醒來
請問:從你生下來的那一刻起,你入睡和醒來的次數哪個多?多多少次?
  
84. 什麼書中毛病最多?
85. 為什麼好馬不吃回頭草?
86. 什麼東西說"父親"是不會相碰,叫"爸爸"時卻會碰到兩次?
87. 農夫養10頭牛,只有19只角,為什麼?
88. 打什麼東西既不花力氣又舒服?
89. 託尼總是喜歡把家裡的鬧鐘整壞,mama為什麼總是讓不會修理鐘錶的爸爸代為修理?
90. 戴夫走路從來腳不沾地,這是為什麼?
91. 生米不小心煮成熟飯時該怎麼辦?
92. 製造日期與有效日期是同一天的產品是什麼?
93. 時鐘敲了十三下,請問現在該做什麼呢?
11. 在羅馬數字中,零該怎麼寫?
  
94. 有對一模一樣的雙胞胎兄弟,哥哥的屁股有黑痣,而弟弟沒有。但即使這對雙胞胎穿著相同的服飾,仍然有人可立刻知道誰是哥哥,誰是弟弟。究竟是誰呢?
  
95. 家有家規,國有國規,那動物園裡有啥規?
96. 先有男人,還是先有女人?
15. 什麼人每天靠運氣賺錢?
  
97. 瑪麗整天說個不停,可有一個月她說的最少,那是為什麼?
  
98. 戴維手裡拿著火柴走到廚房,這有一個煤氣灶和一個酒精燈,他如果想燒開水,請問:他應該先該點燃什麼?
  
99. 老師說蚯蚓切成兩段仍能再生,西恩照老師的話去做,蚯蚓卻死了,為什麼?
100. 汽車在右轉彎時,哪隻輪胎不轉?

======================

[部分答案](不保證正確)

1.
因為圓井蓋不會掉進下水道去,而且在同體積情況下,圓形所費的材料最少.

4.
1/7,2/7,4/7,第一天給1/7,第二天拿2/7換1/7......

5.
用相對速度,距離是5L/7,L是兩城市之間的距離

8.
一個瓶子裡裝一個紅球,其他都裝到另一個瓶子裡,取到紅球的機率是149/198

12.
上下和左右的定義不同,上下是面對稱的,左右是旋轉對稱的


13.
如果確切知道那一點重量是多少,可以採取一種方法:第二個瓶取一粒,第三個瓶去兩粒第四個瓶取三粒。稱重之後可以計算出。 如果不確切的知道,可以考慮使用三根繩子和三個滑輪。

15.
1和2先過去花了2分鐘
1再回去花了1分鐘
3和4過去花了10分鐘
2再回去花了2分鐘
最後1和2過去花了2分鐘
加起來正好17分鐘

16.
裝滿3,3倒入5,裝滿3,3倒滿5,3中剩1夸脫。倒空5,將一夸脫倒入5,裝滿3,倒入 5即可。

17.
四次(鴿籠原理)

75.
128秒

97.
2月

98.
火柴

99.
豎著切

100.
備用胎

相關文章