场景
1、分治算法的基本思想是将一个计算复杂的问题分成规模较小、计算简单的小问题求解,
然后综合各个小问题,得到最终答案。
2、穷举(又称枚举)算法的基本思想是从所有可能的情况中搜索正确的答案。
3、迭代法(Iterative Method) 无法使用公式一次求解,而需要使用重复结构(即循环)重复执行
一段代码来得到答案。
4、递归调用是一个方法在其方法体内调用其自身方法。
5、递推算法是一种理性思维模式的代表,其根据已有的数据和关系,逐步推导而得到结果。
6、动态规划法(Dynamic Programming Algorithm,DPA)类似于分治法,动态规划法的主要做法:
如果一个问题的答案与子问题相关,就能将大问题拆解成各个小问题,
其中与分治法最大的不同是可以让每一个子问题的答案被存储起来,以供下次求解时直接取用。
这样的做法不仅可以减少再次计算的时间,而且可以将这些解组合成大问题的解,可以解决重复计算的问题。
7、回溯法也是枚举法的一种,它的特点就是在搜索过程中寻找问题的解,当发现不满足求解条件时就回溯(返回),
尝试别的路径,避免无效搜索。
8、贪心法(Greed Method)又称贪婪算法,从某一起点开始,在每一个解决问题的步骤使用贪心原则,
即采用在当前状态下最有利或最优化的选择,不断地改进该解答,持续在每一个步骤中选择最佳的方法,
并且逐步逼近给定的目标,当达到某一个步骤不能再继续前进时,算法就停止,以尽可能快的方法求得更好的解。
注:
博客: