---算法是求解问题的步骤---算法
有穷性:一个算法必须在有穷步后结束,每一步必须在有穷时间内完成ide
---算法有穷而程序无穷---对象
肯定性:每条指令不能有歧义,即不管运行多少次,相同的输入总能获得相同的输出blog
可行性:算法中描述的操做均可以经过已经实现的基本运算执行有限次实现数学
输入it
输出class
---回到上面的例子---效率
在step3中,因为并无规定年龄相同的对象间的排列顺序,致使算法的肯定性遭到破坏,所以,严格意义上其并非一个算法程序
再看一个简单的类比,对于数学式 :
$$
y=f(x)
$$
其中:x其实就是输入,y则表示输出,而f()就是一个算法im
一个好的算法应该具有哪些特性?