算法简介
什么是算法?从一个步骤开始,按照既定的顺序执行完所有的步骤,最终结束得到结果的一个过程。
- 确定性,算法的每个步骤都是明确的,对结果的预期也是确定的
- 有穷性,算法必须是由有限个步骤组成的过程,步骤的数量可以是几个,也可以是几百万个,但是必须有一个确定的结束条件
- 可行性,一般来说我们期望算法得出的是正确的结果,这意味着算法的每个步骤都是可行的,只要有一个步骤不可行,算法就是失败的,或者不能被称为某种算法。
- 输入和输出,算法总是要解决特定的问题,问题的来源就是算法的输入,期望的结果就是算法的输出。
程序 = 算法+ 数据结构.
将问题抽象为数学模型,输入输出方法和算法步骤是编写计算机算法程序的三大关键要素。对于非常复杂的问题,建立数学模型是很困难的事情,但是对简单的计算机算法而言,建立数学模型实际上就是设计合适的数据结构的问题,同时,输入输出方式和算法步骤的设计都是基于相应的数据结构设计的。




