目录
1. 什么是算法及其特征
算法的定义:通过一个有限的指令序列集合对特定问题进行求解的一种计算执行描述。
算法的特征:
(1)输入:一个算法具有零个或多个取自指定集合的输入值;
(2)输出:对算法的每一次输入,算法具有一个或多个与输入值相联系的输出值。
(3)确定性:算法的每一个指令步骤都是明确的;
(4)有限性:对算法的每一次输入,算法都必须在有限步骤(既有限时间)内结束
(5)正确性:对每一次输入,算法应产生出正确的输出值;
(6)通用性:算法的执行过程可应用于所有同类求解问题,而不是仅适用于特殊的输入。
2. 问题实例和问题规模
问题实例的定义:计算问题解决方案所需的所有输入。
e.g. 如排序问题的3个输入实例。
1)3, 4, 2, 6, 5;
2)5, 4, 11, 6, 3;
3)7, 3, 1, 6, 4, 8, 5, 9;
问题规模的定义:算法的输入实例大小
如上面排序问题的3个输入实例的规模大小分别为5,5,8。