ACM算法書籍

 我 常感嘆到,學計算機的人是幸福的,因爲在這個領域中有如此多的通俗易懂(相對來說)的經典好書,你需要做的只是堅持把它們一本一本讀下去而已。學力學就沒 有這樣的好事了(抱怨一下),除了論文就是論文,滿篇公式,晦澀堅深,真不是給人看的(雖然我也沒看過幾篇)。在這裏列出一些我看過或者準備看的算法書 籍,以供參考。

1. CLRS 算法導論
算法百科全書,只做了前面十幾章的習題,便感覺受益無窮。

2. Algorithms 算法概論
短 小精悍,別據一格,準經典之作。一個壞消息: 同算法導論,該書沒有習題答案。好消息:習題很經典,難度也適中,只需花點點時間自己也都能做出來。不好也不壞的消息:我正在寫習題的答案,已完成前三 章,還剩九章約二百道題,順利的話二個月之後發佈。另有中文版名《算法概論》,我沒看過,不知道翻譯得怎麼樣。如果有心的話,還是儘量看原版吧,其實看原 版與看中文版花費時間不會相差很大,因爲大部分時間其實都花費在做習題上了。

3. Algorithm Design 算法設計
很經典的一本書,很久之前看的,遺憾的是現在除了就記得它很經典之外其它都忘光了。

4. SICP 計算機程序的構造和解釋
六星之書無需多言,雖然這不是一本講算法的書,但看完此書有助於你更深入的理解什麼是遞歸。我一直很強調習題,看完此書後你至少應該做完前四章的太部分習題。否則那是你的遺憾,也是作者的遺憾。

5. Concrete Mathematics 具體數學 
有人說看TAOCP之前應該先弄清楚這本書的內容,要真是如此的話那我恐怕是看不到TAOCP了。零零碎碎的看了一大半,很多東西都沒有時間來好好消化。如果你是剛進大學不久的本科生,有着大把的可自由支配時間,那你幸運又幸福了,花上幾個月時間好好的讀一下此書吧,收穫絕對大於你的期望值。

6. Introduction to The Design and Analysis of Algorithms 算法設計與分析基礎
很有趣的一本算法書,有許多在別的書上找不到的趣題,看完此書絕對能讓你大開眼界,實在是一本居家旅行,面試裝逼的必備佳作。

7. 編程之美--微軟技術面試心得 
雖 說是一本面試書,但如果把前面十幾頁扯掉的話,我更願意把它看作是一本講解題思維的算法小品。在書中,作者通常是給出一個平常解法,然後再一次又一次的優 化改進,你可以很清楚的看到基本的算法設計思想是如何得到運用以解決實際問題的。如果你已經有了一些算法的基礎,看完本書應該能使你的算法應用能力得到一 定的提高。另外,本書生動有趣,也同樣適合於初學者。

8. Fundamentals of Algorithmics 算法基礎 
也是很久之前在學校圖書館借來看的,內容記不太清楚了,只隱約記得此書的動態規劃章節猶爲出彩。應該是很經典的一本書,個人以爲足以和算法導論等所謂當世經典平分秋色,但是怎麼好像被人提到的不多,或許是我孤陋寡聞了。

9. How to solve it 怎樣解題
二十世紀最偉大的數學思想家之一波利亞的力作,講一般性的解題方法:怎麼認識問題,怎麼轉換問題,怎麼解決問題,如何在問題中得到啓發,如何找到一個通往答案的方向。

10. Programming interviews exposed 程序員面試攻略
一本消遣之作。個人以爲要比國內的某“XXX面試寶典”純粹一些,至少也有一些啓發性的內容,而不單單是面試題解庫。

11. Programming Pearls 編程珠璣
學 習算法不僅需要像Alogrithms,算法導論這樣的重量級的內功心法,像《編程之美》、《編程珠璣》這樣的輕量級的輕功身法也必不可少。前些年網上不 是很流行像“給你10億個數,找到最大的n個”或者“給你10億個數,找出現次數最多的那個數”之類的百度面試題嗎?看了此書你就知道怎麼解決了。相比於 《編程之美》來說,本書中的示例技巧性略低一些,但是也更有實際應用價值一些。

12. 算法藝術與信息學競賽 
如果算法導論是九陽神功,那這本無疑就是九陰真經。本書是專爲參加一些諸如ACM之類程序設計比賽的同學而寫的,江湖人稱“黑書”。裏面講的都是一些在編程比賽中常用的算法、數據結構,以及一些數論和計算幾何等。我雖然並不搞競賽,但也從此書中受益頗多。

13. An Introduction to Probability Theory and Its Applications
準備看的,現在才發現概率論有多麼重要,可惜本科的時候沒有好好學。前不久一個同學問我個問題,我半天弄了一個程序給他,他說:這裏就不是相關係數麼,Excel一下就完事!我暈,我還真不知道那就是相關係數。

14. Numerical Analysis
這本的作者是Richard L. Burden,J. Douglas Faires 
數值分析,討論各種數值算法,比如插值、擬合、積分、微分方程的求解、線性和非線性方程組求解等。準備詳細看。

15. TAOCP 計算機程序設計藝術
傳 說中的TAOCP,說的人多,看的人少。TAOCP四卷堪稱是算法藏經閣中的易筋經或者是少林七十二絕技。天下武學,盡出少林,天下算法,盡出TAOCP 也。這點你可以順便翻開一本算法書看看他的引用文獻就知道了。我只讀了第四卷的部分章節,前三卷暫時還沒敢看,還在讀書計劃表中被無限期擱置。

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