枚举算法(暴力):将问题的所有可能答案都列举出来,然后判断:保留合适的,丢弃不合适的。
- 百钱买百鸡问题
- 填写运算符问题
递归算法:需要预先编写功能函数,然后再函数内部调用自身即可。
- 汉诺塔问题
- 阶乘问题
递推算法:
- 顺推法:Fibonacci数列
- 逆推法:银行存款问题
分治算法:将一个规模为N的问题分解为K个规模较小的子问题,这些子问题相互独立且与原问题性质相同。只要求出子问题的解,就可得到原问题的解。
- 大数相乘问题
- 比赛日程安排
贪心算法:从问题的某一个初始解出发,逐步逼近给定的目标,以便尽快求出更好的解。
- 最大最小公倍数
试探算法(回溯法):为求得问题的正确解,会先委婉地试探某一种可能情况。在进行试探过程中,一旦发现原来选择的假设情况是不正确的,马上会自觉地退回一步重新选择,然后继续向前试探。反复进行,直到得到解或证明无解时才死心。
- 八皇后问题
迭代算法(辗转法):是一种不断用变量的旧值递推新值的过程,解决问题时总是重复利用一种方法。
- 求平方根问题
模拟算法:
- 猜数字游戏
- 掷骰子问题
算法思想
最新推荐文章于 2021-03-27 15:23:01 发布