涉及到算法的一些概念
1 相关概念
1.1 什么是算法
- 算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作。
1.2 算法的基本特征
算法具有五个基本特征:
- 输入
- 注:可以没有输入,仅有输出
- 举例:
- 输出
- 注:至少有1个输出,即必须要有输出!
- 有穷性
- 注:指算法在执行有限的步骤之后,自动结束而不会出现无限循环,并且每一个步骤在可接受的时间内完成。
- 确定性
- 注1:没有二义性。算法的每一个步骤都具有确定的含义,不会出现二义性
- 注2:相同输入结果唯一。算法在一定条件下,只有一条执行路径,相同的输入只能有唯一的输出结果。
- 注3:算法的每个步骤都应该被精确定义而无歧义
- 可行性
- 算法的每一步都必须是可行的,也就是说,每一步都能够通过执行有限次数完成。
1.3 算法设计的要求
- 正确性
- 没有语法错误
- 合法输入→合理输出
- 非法输入→报错信息反馈,不要程序跑死了
- 故意刁难测试输入→合理输出
- 可读性
- 健壮性
- 当输入数据不合法时,算法也能做出相关处理,而不是产生异常、崩溃或莫名其妙的结果。比如Python的异常体!
- 时间效率高和存储量低