8. 寫一段程式去計算某「字串」(String)是否為另一字串的翻轉

挑戰:這是挑戰你是否能夠跳脫現有的運算思維。

例如,「字串」通常代表幾行可以被印刷和看見的字母或文字,但是也可以代表二維的矩陣(matrix)或其他物件。問

你必須確認是否你可以讓一個字串翻轉,包括非文字的字串。

google-puzzle

9. 舊金山市中有多少個氣球?

挑戰:這是Google面試官常出的典型問題,來考考你所設定的「條件範圍」種類為何?

問題的解法有超多,而加上限制條件來簡化問題(例如舊金山有幾平方哩),對於撰寫程式來說相當重要。

10. 何謂「sticky bit」,為何使用它?

挑戰:「sticky bit」是系統管理員設定及權限的專有名詞。

Google想考考是否你知道系統管理的細微處,而非只是撰寫程式。

11. 給定一列整數,位於已知的短整數(short)及未知的數值範圍之內,如何找出其中位數

挑戰:這是考你解決一個在個別數學課中可能學過的數學小技巧。

這問題不簡單。

12. 給定一組區間,找出區間中交集(intersection)的最大數字

挑戰:Google想考你是否確認你知道要忽略此問題中無用的論述,專注於問題正確的部分,以便能找出更有效率的運算法。

13. 一組陣列內有從1到100的100個整數,重新洗牌過後,一個整數被取出,請找出該整數。

挑戰:這個問題運用另一個數學小技巧,就可以在幾行程式中寫出來。

此問題測試你不只知道如何運用數學小技巧,更知道如何將此技巧用程式寫出來。

14. 判斷一個數獨(Sudoku)的解法是否正確

挑戰:這要考你是否能找想出一個用算數檢查解法的方式,可以用另一個數學技巧很快算出

15. <給定股票的每日價格,找出你如何可以在一個買賣交易中輸最多。

挑戰:這是一個不尋常的問題,要考你將所有數字放在一起。

先確定範圍條件(找出通常有大波動的股票),再有效去的去計算中間最大的波動。我們能想到唯一像樣的解法,是用暴力解法在每支股票間進行計算。

創作者介紹

Frank's Blog

Frank 發表在 痞客邦 PIXNET 留言(0) 人氣()