算法
一个算法应该具有以下五个重要的特征:
1,有穷性(Finiteness):算法的有穷性是指算法必须能在执行有限个步骤之后终止;
2,确切性(Definiteness):算法的每一步骤必须有确切的定义;
3,输入项(Input):一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定出了初始条件;
4,输出项(Output):一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的;
5,可行性(Effectiveness):算法中执行的任何计算步骤都是可以被分解为基本的可执行的操作步,即每个计算步都可以在有限时间内完成(也称之为有效性)。
评价算法优劣的标准是?
①时间复杂度:同样输入规模(问题规模)花费多少时间
②空间复杂度:同样输入规模花费多少空间(主要内存)
上两点越小越好
③稳定性:会因输入同而导致稳定情况发生
④算法思路否简单:越简单越容易实现越好
⑤