優秀的程序員10分鐘內能搞定下面5個編程問題,你能做到嗎?

每次我發佈軟件工程師的崗位工作要求,各種求職申請就會紛至沓來,接踵而至。但每每讓我困惑的是,似乎總有那麼幾位應聘者完全不明白所謂“編程”的意思。

 

當然,他們另有想法。

而我認爲,如果你應聘的是“Web前端開發”崗位,那麼你只懂jQuery也可以勝任,那麼,“軟件工程師”是不是就意味着會HTML、JavaScript和CSS這些必備技能就行了呢?

(我覺得那些聊起XML、JSON、XSLT、SOAP、HTTP、REST、SSL和200多個首字母縮寫詞來頭頭是道,但卻不會區分整型和浮點型數據類型的傢伙很有意思。呵呵)

你真的會寫代碼嗎?

對於應聘程序員的求職人員,我,作爲用人單位,首先希望的是你會寫代碼。我指的是真正的代碼:我給你一個問題,你使用任何你覺得舒適的編程語言給出它的解決方案。

你真的能做到這一點嗎?

策略:如果你不能在1小時以內解決以下5個問題,那麼你首先要做的是重新審視自己。的確,或許你各方面的工作都乾的不錯,但是我依然覺得你現在還不配“軟件工程師(或程序員,計算機科學專家,甚至是“開發人員”)”這個頭銜。不要自欺欺人,先花點時間來調整你的重點吧。

5個問題

問題1

使用for循環、while循環和遞歸寫出3個函數來計算給定數列的總和。

問題2

編寫一個交錯合併列表元素的函數。例如:給定的兩個列表爲[a,B,C]和[1,2,3],函數返回[a,1,B,2,C,3]。

問題3

編寫一個計算前100位斐波那契數的函數。根據定義,斐波那契序列的前兩位數字是0和1,隨後的每個數字是前兩個數字的和。例如,前10位斐波那契數爲:0,1,1,2,3,5,8,13,21,34。

問題4

編寫一個能將給定非負整數列表中的數字排列成最大數字的函數。例如,給定[50,2,1,9],最大數字爲95021。

Ps:點擊這裏,閱讀我的解決方案。

問題5

編寫一個在1,2,…,9(順序不能變)數字之間插入+或-或什麼都不插入,使得計算結果總是100的程序,並輸出所有的可能性。例如:1 + 2 + 34 – 5 + 67 – 8 + 9 = 100。

Ps:如果你不知道的話,點擊這裏,閱讀我的解決方案。

如果你能力超羣,上面這些問題對你而言只是小菜一碟,1小時之內解決完全綽綽有餘的話,請將我的慷慨陳詞當作是在放屁。

不過,如果你覺得本文對你很有幫助的話,歡迎分享,並留下您寶貴的見解。Thank for reading。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章