準備程式設計/編碼面試無從下手?這10本好書值得一讀

人工智慧頻道發表於2018-10-09

如果你正在為軟體開發領域的程式語言面試做準備,並且正在尋找一些好的書籍來幫助你,那麼這篇文章值得一讀。在本文中,我將分享一些最好的程式設計/編碼面試書籍,為你的軟體開發工作的面試做出梳理。這些書足以讓你通過像谷歌、微軟或亞馬遜這些公司最艱難的面試。它們很好地涵蓋了程式設計面試的所有基本話題,如資料結構和演算法,系統設計,演算法設計,電腦科學基礎,SQL, Linux, Java,網路等。

準備程式設計/編碼面試無從下手?這10本好書值得一讀


即使你不是在為谷歌或臉書做準備,而是在Infosys、Wipro、TCS或CTS等基於服務的公司,或是摩根大通、摩根士丹利或巴克萊等投行做準備,你也會從這些書籍中受益。雖然其他書籍也不錯,但是很明顯,你有這10本就足夠了。需要補充的是,你也需要根據面試的難度來有選擇的讀這10本書。

如果你在為初創公司和像谷歌、亞馬遜或微軟這樣的大型科技巨頭做準備,那麼你應該認真準備好《Algorithm design Manual 》給出的難題,但對於更普遍的面試,我認為《Cracking the Coding Interview》本身就足夠了。

如果你需要更多的問題,那麼你可以選擇Narasimha Karumanchi編寫的《Coding Interview questions》一書中給出的問題。Narasimha Karumanchi是一名在Python和Java資料結構領域非常出名的作者。

準備編碼/程式語言面試的10本書

以下是我收集的一些最好的準備編碼/程式設計工作面試的書。如果你正在尋找投資銀行、軟體服務公司、初創公司以及一些最大的科技巨頭(如谷歌和Facebook)的科技職位,那麼這些書將幫助你做好準備,並在面試中表現出色。

1. Cracking the Coding Interview

這是我最推薦的程式設計/編碼工作面試的書,因為它包含了來自不同科技公司的常見問題。我強烈建議你閱讀所有的問題,總計189條問題。通讀它你將重新整理你的知識。它稱得上是你面試前必須讀的第一本書,因為通過閱讀它,你將獲得大量的經驗,讓你更快的通過面試。作者曾在著名的科技公司如谷歌,蘋果和微軟工作過,熟悉他們的工作面試流程,這使得本書成為所有程式設計師準備面試工作的寶貴資源。(連結:https://assoc-redirect.amazon.com/g/r/http://www.amazon.com/dp/098478280X/ref=as_at?creativeASIN=098478280X&linkCode=w61&imprToken=GSM-MifGYbdvD1xUoabd7g&slotNum=0&tag=javamysqlanta-20)

2. Programming Interview Exposed

這是我讀過的第一本關於程式設計面試的書,在那之前我甚至不知道有一些書可以幫助你破解面試難關。和前一本書一樣,這本書也包含了編碼面試中各種重要的話題,比如二叉樹、連結串列、字串、SQL、網路、問題的解決等等。如果你必須只買一本書,那麼就買我剛才推薦的那本書,但如果你能負擔得起,就把這本也買下吧,這本書會幫助你更好地學習和理解編碼問題。(連結:http://aax-us-east.amazon-adsystem.com/x/c/QnT3BsupzKqpzT9b9Vn5pc4AAAFmOelL5gEAAAFKAbdAW3s/https://assoc-redirect.amazon.com/g/r/http://www.amazon.com/dp/1118261364/ref=as_at?creativeASIN=1118261364&linkCode=w61&imprToken=GSM-MifGYbdvD1xUoabd7g&slotNum=2&tag=javamysqlanta-20)

準備程式設計/編碼面試無從下手?這10本好書值得一讀


3. Algorithm Design Manual

這是一本很棒的關於演算法的書,它是你能想到的最好的書,它能幫助你破解一些最難的程式設計工作面試,比如谷歌,Facebook,微軟,亞馬遜和蘋果的技術工作。這本書包含了基於演算法和資料結構的問題。如果你能獨立解決這些問題,那你就已經為面試做好了充分的準備。它還包含一些解決問題的常見方法,教你如何應用演算法來解決實際問題。簡而言之,這是你必須購買的程式設計工作面試的書籍。(連結:http://aax-us-east.amazon-adsystem.com/x/c/QnT3BsupzKqpzT9b9Vn5pc4AAAFmOelL5gEAAAFKAbdAW3s/https://assoc-redirect.amazon.com/g/r/http://www.amazon.com/Algorithm-Design-Manual-Steven-Skiena/dp/1849967202/ref=as_at?creativeASIN=1849967202&linkCode=w61&imprToken=GSM-MifGYbdvD1xUoabd7g&slotNum=4&tag=javamysqlanta-20)

4. Elements of Programming Interviews

這是另一本準備程式設計工作面試的必備書籍。它是少有的包括編碼、資料結構、演算法和問題解決的完整書籍之一。如果你正在準備創業或者為知名的軟體公司工作,如亞馬遜、推特,那麼這本書將為你提供一個很好的面試材料。(連結:http://aax-us-east.amazon-adsystem.com/x/c/QnT3BsupzKqpzT9b9Vn5pc4AAAFmOelL5gEAAAFKAbdAW3s/https://assoc-redirect.amazon.com/g/r/http://www.amazon.com/dp/1479274836/ref=as_at?creativeASIN=1479274836&linkCode=w61&imprToken=GSM-MifGYbdvD1xUoabd7g&slotNum=5&tag=javamysqlanta-20)

5. Programming Pearl

這是為面試做準備的最古老的書之一,但是正如他們所說的,"篩下來的都是金子",這本書在教你電腦科學和程式設計的基礎知識方面是非常出色的。這本書中的一些經典問題,比如用非常少的RAM對100萬個整數進行排序,仍然備受眾多考官的青睞。雖然這本書不能替代一些特別好的演算法書(例如《Introduction to Algorithms 》、《Algorithms 4th Edition》,但它絕對是一本特別好的補充類書籍。而且它非常有趣,即使你在上班路上讀的時候也不會睡著。(連結:http://aax-us-east.amazon-adsystem.com/x/c/QnT3BsupzKqpzT9b9Vn5pc4AAAFmOelL5gEAAAFKAbdAW3s/https://assoc-redirect.amazon.com/g/r/http://www.amazon.com/Programming-Pearls-2nd-Edition-Bentley/dp/0201657880/ref=as_at?creativeASIN=0201657880&linkCode=w61&imprToken=GSM-MifGYbdvD1xUoabd7g&slotNum=6&tag=javamysqlanta-20)

6. Java Programming Interview Exposed

如果你正在為Java程式設計工作面試做準備,那麼這是必須閱讀的一本書。因為Java面試不僅關注編碼和程式設計,還關注Java、Java API的知識,如JDBC、Java集合框架、JVM內部以及流行的框架,如Spring、Hibernate、JUnit等。這本書可以幫助你準備那些除了標準編碼、資料結構和演算法之外的所有問題。本書適合初級和高階Java開發人員的面試。(連結:http://javarevisited.blogspot.sg/2015/12/5-good-books-for-java-jee-programming.html)

準備程式設計/編碼面試無從下手?這10本好書值得一讀


7. Coding Interview Questions

這是我最喜歡的作者Narasimha Karumanchi的書,他也是一名資深的作者,他可以讓資料結構和演算法變得很容易。在這本書中,你會遇到很多科技工作面試中常見的編碼問題,作者還做了大量工作來告你如何應對這些問題。比如說它們在時間和空間上的複雜性,以及如何通過使用經過測試的技術來改進你的解決方案。(連結:http://javarevisited.blogspot.com/2015/07/5-data-structure-and-algorithm-books-best-must-read.html)

8. Dynamic Programming for Coding Interviews

這是另一本為程式設計面試做準備的好書。這本書只專注於解決動態規劃演算法。《Meenaksh and KamalRawat》一書的作者在解釋如何使用動態規劃和遞迴來解決問題方面做了很好的工作,例如,如何計算Fibonacci級數的第80項。這本書讀起來也很有趣。(連結:http://java67.blogspot.com/2016/02/5-books-to-improve-coding-skills-of.html)

9. Algorithms for Interviews

這是另一本適用於面試的好書,它不僅會教你標準演算法,還會教你如何使用這些演算法來解決特定的問題。他們一步一步地指導你應用一個已知的演算法來解決未知的問題。這本書對那些準備在大科技巨頭上工作的求職者特別有用,這些大科技巨頭專注於創新,比如谷歌,微軟,臉書,亞馬遜,英特爾等等。(連結:http://java67.blogspot.com/2015/09/top-10-algorithm-books-every-programmer-read-learn.html)

10. SQL Puzzles by Joe Celkos

SQL查詢是程式設計工作面試中不可或缺的一部分,這本書有一些你見過的最好的SQL查詢挑戰。一旦你完成了這本書中給出的謎題,你應該很容易在面試中處理任何型別的SQL查詢,例如基於連線、聚合的函式和相關子查詢。(連結:http://www.java67.com/2016/09/sql-5-best-books-to-learn-and-master.html)

以上就是為程式設計工作面試準備的一些最好的書籍。這個列表包括了眾多面試所可能問到的話題,如資料結構和演算法,系統設計,演算法設計,SQL,動態程式設計,程式語言以及破解程式設計工作面試所需的軟技能。

這個列表的前兩本書是任何級別的程式設計師都必須閱讀的,因為它將重新整理所有軟體開發人員的認識與觀念。


來自 “ Kimberly Cook ”,原文連結:http://blog.itpub.net/31545819/viewspace-2215632/,如需轉載,請註明出處,否則將追究法律責任。

相關文章