纠结于买什么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栈
第三讲
未完待续......