时间复杂度O(1) < O(logN) < O(N) < O(N logN) < O(N2) < O(N3) < O(2N)<O(N!)
枚举(暴力、穷举):枚举所有结果得到想要的结果
递推:加上一些条件进行枚举
递归:函数在运行时调用自己
分治:二分法,归并排序,计数排序,基数排序等
动态规划:多阶段决策最优解
贪心:作出当下最优选择,不考虑整体
搜索与回溯(试探):从一条路往前走,能进则进,不能进则退回来,换一条路再试。
回溯搜索是深度优先搜索(DFS)的一种,类似于树的先序遍历
迭代:这一次操作的结果是下一次操作的初始值
模拟:使用编程语言对真实事物或者过程进行虚拟,将汉语对事物的描述翻译为编程语言,类似于把汉语翻译为英语。