程序員書庫(ID:OpenSourceTop) 編譯
鏈接:https://www.quora.com/What-are-the-best-books-on-algorithms-and-data-structures


在計算機發展的早期(我指的是90年代中期),算法和數據結構是十分重要,後來慢慢淡化了,但是像Netscape, Microsoft, Google, Oracle, Sun這種大企業,他們需要大量的原創研究,所有,仍然非常需要理解算法並能正確應用他們的人,它們更偏愛計算機專業的畢業生,因爲相對而言,他們更對底層的知識掌握更好


當我開始學習算法和數據結構的時候,我幾乎沒有數學基礎,因此,大多數書籍我都看不懂,你可以認爲我是100%自學成才,目前,我書架上的相關書籍不少於50本,如果你也和我一樣沒有什麼數學背景,我建議你看這些書,正是這些書教會了我需要知道的知識:


1、《Data Structures and Algorithms in Java》


爲什麼大廠面試都愛問算法和數據結構


書中的代碼十分簡潔和優雅,把算法和數據結構很好的融合在一起,講的也很詳細。


2、《算法導論(原書第3版)》


爲什麼大廠面試都愛問算法和數據結構



關於算法的經典綜合教科書。在程序員的職業生涯中,至少要閱讀一次。這本書涵蓋了廣泛的算法知識,他可以被所有級別的程序員使用,從大學生到專業程序員,這本書使用僞代碼向你解釋這一概念,它可以輕鬆地用在任何編程語言中,你可以把它當成一本算法教科書,如果你想把它用在幫助你面試上面,那麼你可能需要一個充足的準備時間。


3、《算法引論》


爲什麼大廠面試都愛問算法和數據結構


一本關於各種算法介紹的書,網站上有許多有趣的面試問題都是來自這本書,每章的結尾部分是精華之處,因爲附帶了大量具有創造性的問題。


4、《算法設計與分析基礎》


爲什麼大廠面試都愛問算法和數據結構



算法設計的一本介紹性的書。推薦給初學者。

5、《The Algorithm Design Manual》


爲什麼大廠面試都愛問算法和數據結構



很全面的算法書,涉及到更多計算幾何,組合優化之類的問題

6、《Invitation to Computer Science》


爲什麼大廠面試都愛問算法和數據結構


這是一本手冊,不僅僅是關於算法和數據結構,它更是一本計算機科學概論,已經有第六版,不過第五版比第六版便宜,所以還是看第五版吧


7、《Discovering Computer Science》


爲什麼大廠面試都愛問算法和數據結構



這是關於計算機科學/編程的導論,但在我看來,它旨在告訴我們爲什麼要做計算,而不僅僅是學習編碼或算法。


8、《Data Structures using C》


爲什麼大廠面試都愛問算法和數據結構



本書的作者Thareja 總是能讓很難的知識點變得很容易理解和掌握


9、《Algorithms 4th》


爲什麼大廠面試都愛問算法和數據結構



這本書就不多介紹,非常實用就對了


10、《數據結構與算法經典問題解析》


爲什麼大廠面試都愛問算法和數據結構



本書是一本數據結構方面的優秀教材,以Java爲描述語言,介紹了計算機編程中使用的數據結構和算法。本書強調問題及其分析,而非理論闡述,共分爲21章,講述了基本概念、遞歸和回溯、鏈表、棧、隊列、樹、優先隊列和堆、並查集DAT、圖算法、排序、查找、選擇算法(中位數)、符號表、散列、字符串算法、算法設計技術、貪婪算法、分治算法、動態規劃算法、複雜度類型等內容。

相关文章