程序員必讀的書籍排行榜
程序員在學(xué)習(xí)課程的同時,閱讀這些書籍,快速前進,離你的理想目標(biāo)更近一步。下面學(xué)習(xí)啦小編就來為大家推薦的程序員必讀的書籍,歡迎參閱!
程序員必讀的書籍
1.《算法導(dǎo)論》 Thomas H. Corman
這是最著名的算法書之一,但要注意它的理論性非常強。目前它已經(jīng)出到了第三版。我強烈建議每個程序員都在書架上放一本算法導(dǎo)論,但只用來做短暫的閱讀和參考。因為這本書你是不可能一口氣讀完的。我第一本就推薦它的另一個理由是,它不限定任何編程語言,而且還有對應(yīng)的教學(xué)課程。
2.《算法》 Robert Sedgewick & Kevin Wayne
這本書一直是我偏愛的算法參考,但現(xiàn)在我看的比較少了。你能在這本書里學(xué)到很多算法的背景知識,而且現(xiàn)在這本書也有了很多對應(yīng)不同語言的版本(比如 Java 和 C++)。信不信由你,如果你已經(jīng)掌握了一門編程語言,那么用這門語言學(xué)習(xí)算法的曲線就會不那么陡峭。
3.《算法設(shè)計手冊》 Steve S. Skiena
這也是一本很棒的算法書,介紹的算法類型非常豐富,也包含很多代碼。我尤其喜歡書中介紹算法在實際中是如何應(yīng)用的。這有助于你了解一類算法可以用來解決怎樣的一類問題。書中的代碼是用 C 寫的,但并不是很深奧,所以看起來很輕松。我在畢業(yè)快十年以后看這本書,也很快就掌握了一些圖論算法。 這本書我已經(jīng)買了有十年了,現(xiàn)在還是是不是會拿出來看一看。
4.《面試算法》 Adnan Aziz
這是一本必讀的算法書,尤其對于要找工作的人來說。光看封面就知道這本書的內(nèi)容很有趣:圖靈的人臉是用許多張不同人物的縮略圖拼成的。而書中就介紹了如何實現(xiàn)這樣的拼接算法。我喜歡這本書,因為它解決問題的途徑和目的比較獨特。有時候懷著不同目的去學(xué)習(xí)同樣的東西可能會更有助于理解。
5.《算法簡述》
這是一本很棒的算法書,尤其對于 Java 程序員來講。它著重從實現(xiàn)的角度來介紹各種算法,也不像很多其他經(jīng)典教材那樣包含很多數(shù)學(xué)。所有的算法都是用模式來描述的,也提供了學(xué)習(xí)它們的動機、解釋用的圖片、高層次的偽代碼以及實際可運行的代碼(C、C++、Java 和 Ruby)。書中也包含一些測試,用以證明不同算法之間理論上的性能差異。簡而言之,這是程序員學(xué)習(xí)算法最好一本書之一。
6.《算法設(shè)計》 Kleinberg & Tardos
這應(yīng)該是 Thomas Coren 的算法導(dǎo)論之后第二好的算法書。它不是一本導(dǎo)論,而是面向有經(jīng)驗的程序員。書中側(cè)重為對基本算法比較熟悉的程序員介紹了一些算法設(shè)計的知識。你應(yīng)該先看一本導(dǎo)論再來學(xué)習(xí)這本書。
程序員看的書籍
1.《算法導(dǎo)論:一種新的途徑》 Udi Manber
這是一本很適合自學(xué)的書,因為其中包含了幾百個問題和例子。它是為提高讀者的問題求解能力以及令讀者掌握算法設(shè)計背后的原理所編寫的。這有助于你提高解決問題和寫代碼的能力。
2.《算法設(shè)計與分析》 Anany Levitin
這也是每個程序員都應(yīng)該在書架上放一本的算法書。在你學(xué)習(xí)完一本導(dǎo)論書以后,你可以通過這本書來學(xué)習(xí)一些進階知識。
3.《數(shù)據(jù)結(jié)構(gòu)和算法》 Aho, Ullman & Hopcroft
又一本精彩的數(shù)據(jù)結(jié)構(gòu)和算法入門教材。這本書排版美觀大方,很多不喜歡數(shù)學(xué)的程序員們都會喜歡它。
程序員讀的專業(yè)技術(shù)書
1、第一本Docker書
Docker公司前服務(wù)與支持副總裁力作
全球第一本Docker技術(shù)圖書
學(xué)習(xí)Docker必備的第一本書
《第 一本Docker書》由Docker 公司前服務(wù)與支持副總裁James Turnbull 編寫,是權(quán)威的Docker 開發(fā)指南。本書會指導(dǎo)讀者完成Docker 的安裝、部署、管理和擴展,帶領(lǐng)讀者經(jīng)歷從測試到生產(chǎn)的整個開發(fā)生命周期,讓讀者了解Docker 適用于什么場景。書中先介紹Docker 及其組件的基礎(chǔ)知識,然后用Docker 構(gòu)建容器和服務(wù)來完成各種任務(wù):利用Docker 為新項目建立測試環(huán)境,演示如何使用持續(xù)集成的工作流集成Docker,如何構(gòu)建應(yīng)用程序服務(wù)和平臺,如何使用Docker 的API,如何擴展Docker。
2、游戲設(shè)計的100個原理
眾多游戲設(shè)計秘籍
100條重要的游戲設(shè)計領(lǐng)域的方法
《游戲設(shè)計的100個原理》分4篇向讀者講述了游戲創(chuàng) 新、創(chuàng)作、平衡和解決問題的100個原理。每一個專題都采用豐富的案例來介紹多種不同的設(shè)計思路,同時以經(jīng)典圖片的形式點出了該原理所蘊含的真諦。 本書為全彩設(shè)計,適合從事或?qū)W習(xí)游戲設(shè)計的專業(yè)人士閱讀,讀者將從本書中學(xué)到如何讓游戲流行,如何讓玩家癡迷,如何設(shè)置關(guān)卡以及如何解決游戲設(shè)計中的問 題。
3.《Python算法》
這本書是為 Python 程序員所編寫的。作者 Maguns Lie Hetland 同時也是另一本很受歡迎的 Python 入門教材《Beginning Python》的作者。這本書側(cè)重介紹圖論算法。正如我所說,算法跟具體的編程語言是無關(guān)的。你也可以用 Java 或者 C++ 來實現(xiàn)從這本書里學(xué)到算法。當(dāng)然如果你已經(jīng)會 Python,這就是一本絕佳的教材。
這就是每個程序員都應(yīng)該讀的10本算法書。當(dāng)然,算法是一個很復(fù)雜的話題,很多算法只學(xué)習(xí)一遍是很難徹底理解的。遇到這種情況時,我建議把同一本書讀兩遍。并且,光讀是不夠的,你還要用自己喜歡的語言去實現(xiàn)算法。試著去實現(xiàn)你自己的 ArrayList 和 HashMap。學(xué)習(xí)算法的成果并不會馬上就顯露出來,但你能注意到自己在思考和解決問題的時候已經(jīng)有了細(xì)微的變化,代碼質(zhì)量也會逐漸提高。畢竟我們常說,世界上有兩種程序員,一種是懂算法的,另一種是不懂的。
猜你喜歡:
程序員必讀的書籍排行榜
上一篇:暢銷好看的勵志書籍推薦
下一篇:程序員必讀的專業(yè)書籍推薦