//动态规划---------------------------------------------------------------------------
- 排列组合之隔板法,另外也可以使用动态规划。
- 一维递推类型的动态规划,要求对时间复杂度优化。
- 股票状态数组定义,持有与不持有收益关系,状态转移方程定义。
- 二进制有关的动态规划(当然本题也可以暴力解)。
- 状态转移最好理解的例子,动态规划中根据哪种状态写状态转移方程是很关键的。
- Bellman-Ford算法应用(对比Dijkstra算法)。
- 类 0/1背包问题,学会识别并转化(倒着求解dp数组的原理:逐步填起来)。
- 类背包问题,识别的关键是先用数学关系转换为对应的背包填充模式。
- 双边同时考虑最优解的动态规划问题,理解空间优化的本质。
- 完全背包问题 。--------关于完全背包问题两种情况:求组合数与排列数的方法。(组合数)(排列数)
- 区间和与动态规划。
- 单调栈的使用;(连续1的和与单调栈的使用)。
- 连续1的和(矩形数量统计)。
- 组合背包问题。
- 最长斐波那契子数列长度求解,学会将二维数组hash到一维上。
//图论---------------------------------------------------------------------------
- 判断B树是A树的子结构。
- 删除指定树节点返回森林。。
注意该方法中使用 unordered_set 的.count(para)查看该元素是否在set中。