導航:首頁 > 程序命令 > 老程序員面試題

老程序員面試題

發布時間:2025-07-28 21:02:12

1. 精選程序員面試常問的邏輯題

精選程序員面試常問的邏輯題1. 紅白帽子推理

題目描述:一群人開舞會,每人頭上都戴著一頂帽子。帽子只有黑白兩種,黑的至少有一頂。每個人都能看到其他人帽子的顏色,卻看不到自己的。主持人先讓大家看看別人頭上戴的是什麼帽子,然後關燈,如果有人認為自己戴的是黑帽子,就打自己一個耳光。第一次關燈,沒有聲音。於是再開燈,大家再看一遍,關燈時仍然鴉雀無聲。一直到第三次關燈,才有劈劈啪啪打耳光的聲音響起。問有多少人戴著黑帽子?

答案:三個人。

拓展:N個人是黑帽子,就會在第N天,有N個人打自己一個耳光。

2. 吃葯片

題目描述:有兩種葯片,每種有兩個,一個人需要早上吃兩種葯片各一個,現在這四個葯片混在一起了,這個人有什麼方法吃?

答案:把所有的4顆葯丸都切開成相等的兩半,然後早上和晚上,分別吃掉每顆葯丸的一半。

3. 得到指定容量的水

題目描述:一個5L,一個6L的瓶子,要得到3L的水,問什麼方法?

答案:6-5=1,1L水放在5L那個瓶裡面,然後再裝6L水,往5L(裡面已經有1L)裡面倒,這樣就會剩下2L水在6L裡面,再把2L水放在5L裡面,再裝一次,不就可以6L那裡到處3L水到5L裡面,自己就剩下3L了。

4. 老鼠/犯人喝酒試毒

題目描述:一共1000瓶酒,其中一瓶有毒。如果一隻老鼠喝了有毒的酒,會在一天之後死亡,那麼如果給你一天時間,讓你判定哪瓶酒有毒,至少需要幾只老鼠?

答案:10隻。這個需要使用二進制編碼來解決,1000瓶酒至少需要10位二進制數來進行編碼。然後取十隻杯子分別代表這十個二進制數的十個位,分別將1000瓶酒倒入其編碼為1的對應的杯子中。取十個老鼠分別喝十個杯子中的酒,一天之後,就可以根據喝哪些杯子的老鼠死掉來確定出有毒的那瓶酒的編碼,從而確定哪瓶酒有毒。

拓展

5. 小球稱重

題目描述:有8個小球,其中七個的重量是相同的,有一個較輕。給你一個天平,問秤幾次能找出那個較輕的小球,若天平只能秤兩次,又該怎麼秤?

答案:第一次兩邊各放隨機三個,如果平了,則另外一個是輕的,若不平,還有第二次,拿出那三個輕的,在兩邊隨機放一個,就能測出哪個最輕了。

6. 飛機加油

題目描述:已知:每個飛機只有一個油箱,飛機之間可以相互加油(注意是相互,沒有單獨的加油機),一箱油可供一架飛機繞地球飛半圈。問題:為使至少一架飛機繞地球一圈回到起飛時的飛機場,至少需要出動幾架飛機?(所有飛機從同一機場起飛,而且必須安全返回機場,不允許中途降落,中間沒有飛機場)

答案:分為3架飛機5架次和3架飛機6架次。

以上即為精選的程序員面試常問的邏輯題及其解答,希望能夠幫助到大家。

2. 一道程序員面試題,設計,很難

狀態0:初始狀態
狀態1:我是端點A
狀態2:我可能是端點B
狀態3:我是端點B
狀態4:我是路人

消息0:初始化消息
消息1:這是來自端點A的消息,我正在尋找端點B
消息2:你的另一邊還有我,你不是端點B
消息3:那麼誰是端點B呢
消息4:這是來自端點B的消息
消息5:這是來自端點A的消息
消息6,路人請在下一次接到消息5時開燈,端點A請開燈

回饋,將消息發給觸發當前消息的一端(誰給我的我就給誰)
轉發:將消息發給觸發當前消息的另一端(誰給我的我就不給誰)
廣播:將消息發給兩邊(給兩邊都發送)

收到初始化消息的人將自己置為狀態1,並轉發消息1,
收到消息1的人將自己置為狀態2,並轉發消息1,回饋消息2,
收到消息2的人將分為兩種:
狀態1,不改變狀態,並回饋消息3
狀態2,將自己置為狀態4,不發送消息
收到消息3的人將分為兩種:
狀態4,不改變狀態,轉發消息3
狀態2,將自己置為狀態3,回饋消息4
/*
至此為止,三種角色已經明確,兩個端點分別是狀態1和狀態3,狀態4是路人
*/
可能收到消息4的人分為三種:
端點A,回饋消息5
路人,轉發消息4
端點B,回饋消息4
收到消息5的人分為兩種:
路人,轉發消息5
端點B,
/*
當端點B收到消息5的時候,端點B還正在無限發送消息4,端點A正在無限發送消息5,路人正在無限轉發消息5和4
*/
此時所有路人都可能收到兩種消息,4和5,端點A只會收到4端點B只會收到5
端點A收到消息5則回饋消息4
端點B收到消息4則回饋消息5
路人只負責轉發

我已經盡力了,只能做到這個程序,這個是結合網路路由協議設計出來的一種通信機制,但是也只能做到目前的程度,經過我一周零散時間的考慮,想要實現同時開燈,必須在狀態里邊提供計數器,能給個整數就行,這樣就可以通過對信號進行計數來約定時間,否則我真的想不到辦法了,以上答案僅僅是一個思路,而且我認為這個題缺乏必要條件,希望對你有幫助。

閱讀全文

與老程序員面試題相關的資料

熱點內容
phpsetdate 瀏覽:255
阿里雲伺服器管理器 瀏覽:36
sha256演算法java 瀏覽:980
深圳美女程序員 瀏覽:853
賣房哪個app最好2020 瀏覽:396
美間app怎麼設計 瀏覽:556
循序漸進學java韓順平 瀏覽:162
在哪個app可以看到自己是什麼臉 瀏覽:161
筏板內柱子周圍鋼筋加密 瀏覽:634
java怎麼編譯成class 瀏覽:710
遠程桌面雲伺服器知道Ip嗎 瀏覽:456
看程序員免費網站29集 瀏覽:30
加密狗價值多少錢 瀏覽:734
招商銀行app怎麼預留手機號 瀏覽:934
編譯生成文件的後綴是 瀏覽:871
為什麼分身應用不能加密 瀏覽:830
華擎bios能用編程器嗎 瀏覽:963
舊版看書APP怎麼回首頁 瀏覽:85
程序員那麼可愛姜逸城喝醉酒撒嬌 瀏覽:683
學單片機的app 瀏覽:286