為什么想學習算法
學習算法一般有很多原因,總結比較重要的兩點:
1。更好的設計編程,算法是根本,是基礎
2。更好的鍛煉思維能力,思考問題以及解決問題
我個人選擇先鍛煉自己的思維,因為這是根本的根本,之后不止可以用在設計編程上,其他領域莫不受益。
為什么選擇《算法(第四版)》
因為這部書實在經典,眾口推薦,特意試用了一下,吸引我的印象最深的幾點:
1。圖文并茂,視覺元素很多,我買的英文版還是彩色的,看著很舒服
文字描述的同時,一般是在同頁面,有圖表式的總結,非常清晰。
2。講解淺顯易懂,不枯燥,內含50多經典算法。
3。完整高亮的配套代碼,并可下載
所有代碼都是java 代碼,可運行。學習算法之余還加深了java。
最近開始學Python,準備用python寫算法代碼
4。豐富的練習題,有基本的測驗題,另配有高深一些的練習題,以及我很喜歡的Q&A。
5。配套網站:algs4.cs.princeton.edu/home/?包含各種資源。
本書作者:
Robert Sedgewickhas been a Professor of Computer Science at Princeton University since 1985, where he was the founding Chairman of the Department of Computer Science. He has held visiting research positions at Xerox PARC, Institute for Defense Analyses, and INRIA, and is member of the board of directors of Adobe Systems. Professor Sedgewick’s research interests include analytic combinatorics, design and analysis of data structures and algorithms, and program visualization. His landmark book,Algorithms,now in its fourth edition, has appeared in numerous versions and languages over the past thirty years. In addition, with Kevin Wayne, he is the coauthor of the highly acclaimed textbook,Introduction to Programming in Java: An Interdisciplinary Approach(Addison-Wesley, 2008).
Kevin Wayneis the Phillip Y. Goldman Senior Lecturer in Computer Science at Princeton University, where he has been teaching since 1998. He received a Ph.D. in operations research and industrial engineering from Cornell University. His research interests include the design, analysis, and implementation of algorithms, especially for graphs and discrete optimization. With Robert Sedgewick, he is the coauthor of the highly acclaimed textbook,Introduction to Programming in Java: An Interdisciplinary Approach(Addison-Wesley, 2008).