数据结构和算法有紧密的联系。
算法就是你是你解决问题的技巧和方式。
算法有五个特征:
输入,输出,有穷性,确定性,可行性。
输入:指我们可以输入参数;
输出:算法需要一定的结果或者返回值;
有穷性:不会出现死循环,在特定的时间内完成计算任务;
确定性:算法的每一个步骤都有特定的含义,不会出现二义性;
可行性:算法的每一步都必须是可行的,同步有限的步数可以完成。
算法的要求:
算法程序没有语法错误;
算法对于满足条件的输入能有合法的输出;
算法程序对于非法输入能够产生满足规格的说明;
对于故意刁难的测试输入能够输出合力的结果。
算法设计的要求:
1>可读性:
算法的目的是为了阅读,理解和交流;
代码的目的一方面是为了j计算机执行,另一方面是为了自己日后阅读和他人阅读;
2>健壮性;
当输入数据不合法时,算法能够做出相应的处理,而不会产生莫名其妙的结果,异常或崩溃;
3>时间效率高和存储量低