学习数据结构和算法过程中我根据使用的数据结构或者特殊算法分了一些类,并将不同的问题记录在 algorithm learning . 所有问题都是来自leetcode, 使用C++
实现并测试过的。
array and string
- 主要就是一些没有应用除
vector
之外数据结构或者特殊算法技巧的问题
math
- 需要一些数学知识或技巧的问题
link list
- 用到了link list
- 和link list有关问题解决方法关键就是记录需要connect/disconnect的节点的前后节点
dynamic programming
- 可以使用dynamic programming解决的问题
- 使用dynamic programming核心就是找到状态转移方程
tree
- 使用到了tree数据结构或者需要实现一些特殊tree结构
- 同link list问题一样, 解决这类问题关键就是要记录住父节点和兄弟节点
greedy
- 运用greedy算法解决的问题
stack queue
- 需要实现和stack/queue或使用stack/queue的问题