糾結於買什么C++版的算法書的時候,到圖書館去一一看了一下,最后決定買《算法之美——隱匿在數據結構背后的語言》(電子工業出版社2016年出版),其他的書可能糾結於一些語法,適合一本教程來用。我主要看中的是這本書基本上經典的算法都用實現,在嚴蔚敏《數據結構》中其實把主要的算法思想都講過,但是沒有真正的實現,對於我們這樣的小鳥,自己去實現也相當困難,而且要花很多時間,也是本着急功近利的想法來看的這本書。本書的算法代碼都是以C++模板來寫的,我希望自己能夠堅持讀完,堅持更新這里的文章。自己也買了一些書了,感覺都沒有認真讀完,然后有很長一段時間沒有動,以后的書都要堅持看完,再買下一本。
本書以現代計算機常用的十八種數據結構為線索,結合C++中的STL編程實踐,詳細介紹了四大算法設計思想(貪心法、動態規划、分治法、回溯法)、二十大經典問題和四十二個重要算法。具體涉及的數據結構類型包括:數組、字符串、鏈表(單向鏈表、單向循環鏈表、雙向循環鏈表)、棧、隊列、樹(二叉樹、哈夫曼樹、堆)、森林、搜索樹(二叉搜素樹、AVL樹、紅黑樹、Trie樹)、圖、集合、字典和並查集。
在CSDN上有專門的博客專欄來寫了《算法之美》。可以參考:http://blog.csdn.net/baimafujinji/article/category/1608099
下面更新的目錄:
第一章:數據到算法
第三章:字符串與匹配模式
- 算法之美--3.1.1 字符串 2017-01-19 21:16:10
- 理解KMP(BF算法)
- 算法之美--3.2.2 MP算法
- 算法之美--3.2.3 KMP算法 2017-02-12 20:15:52
- 算法之美--3.3.1 全局編輯距離
第四章 鏈表
- 算法之美--4.2.2 單鏈表實現 2017-02-21 21:08:03 鏈表求和/鏈表並集 02-線性結構1 兩個有序鏈表序列的合並
- 算法之美--4.3.3 約瑟夫環的問題 // 單循環鏈表
- 算法之美--4.3.4 魔術師發牌問題 // 單循環鏈表
- 算法之美--4.3.5 拉丁方陣問題 // 單循環鏈表
- 維吉尼亞加密算法(雙向循環鏈表)
第五章 棧和隊列
45個算法:
- 理解KMP(BF算法)
- 算法之美--3.2.2 MP算法
- 算法之美--3.2.3 KMP算法 2017-02-12 20:15:52
- 算法之美--3.3.1 全局編輯距離
22個經典問題:
- 算法之美--2.3.2大整數乘法問題
- 算法之美--2.3.1Z字形編排問題
- 算法之美--2.3.3九宮格問題
- 算法之美--4.3.3 約瑟夫環的問題
- 算法之美--4.3.4 魔術師發牌問題
- 算法之美--4.3.5 拉丁方陣問題
中國大學MOOC-陳越、何欽銘-數據結構-2017春
第一講:
第二講
包含MIN函數的棧+一個數組實現兩個堆棧+兩個數組實現MIN棧
第三講
未完待續......