算法
- 第一步:记下相应的代码
- 递归思路:先完成一步,然后看剩下的步骤跟前一步是不是相同或者类似。
- 基例 + 链条
- 动态规划(DP):先采用递归思路(一般)或者其他思路, 设计状态,找到递推式;把计算的状态都保存起来,避免重复计算。
- 初始状态 + 递推式, 像递归的逆过程;一般反过来就加了条件,变成二维
- 一看就会,一做就废。
- 递归:从已知推到未知。
- “人人为我” n->1
- ”我为人人“ 1->n
- 二维数组设置的状态
- 基本靠猜
- max()函数头文件:include <algorithm>
- 难以习惯,需要大量刷题培养思维
- 深度优先搜索(DFS):
- 回退是瞬间的,不耗费时间。
- 剪枝: 1.可行性剪枝, 2. 最优性剪枝(1.保存中间结果(预见性最优性剪枝) 2.保存最优结果)、
- 广度优先搜索(BFS ):
- 可确保找到最优解
- 贪心算法:
- 每一步行动总是按某种指标选取最优的操作来进行, 该指标只看眼前,并不考虑以后可能造成的影响。
- 贪心算法需要证明其正确性(替换法, )。
以上仅代表个人思考和学习过程记录,仍有不足之处,欢迎大佬们指出!

浙公网安备 33010602011771号