版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_34947048/article/details/84658912
算法的5个特征
- 有穷性:算法的指令或者步骤的执行次数是有限的,执行时间也是有限的;
- 确切性:算法的每一个指令或者步骤都有明确的定义和描述;
- 输入:一个算法应该有相应的输入条件,用来刻画运算对象的初始情况;
- 输出:一个算法应该有明确的结果输出;
- 可行性:算法的执行步骤必须是可行的,且可以在有限时间内完成。
算法的分类
-
按应用分类
基本算法、数据结构相关的算法、几何算法、图论算法、规划算法、数值分析算法、加密解密算法、排序算法、查找算法、并行算法和数论算法等;
-
按照确定性分类
确定性算法:该类算法可以在有限时间内完成,得到唯一结果,且取决于输入值;
非确定性算法:该类算法在有限的时间内完成,得到的结果不是唯一的,存在多值性; -
按照算法思路来分类
递推算法、递归算法、穷举算法、贪婪算法、分治算法、动态规划算法、迭代算法等。