1.算法的基本特征
算法是一组可行的,确定的,有穷的对问题的求解方法,具有以下特征:
1)有穷性
算法的执行步骤和执行时间必须是有限的.
2)确切性
算法的每一步必须有明确的定义和描述.
3)输入
每个算法必须有明确的输入
4)输出
算法必须的明确的输出
5)可行性
算法的每一个步骤必须是明确可执行的.
2.算法的性能评估
1)时间复杂度
算法执行所需要的时间越短越好.
2)空间复杂度
算法执行过程中消耗的存储空间越小越好.
3.大O表示法
以数组为例,假设数组中不会有重复数据,来看数组操作所需要的步数.
插入:一步即可,直接放入第一个空位
查找:最快一步找到,最慢N步找到,平均N/2步.
删除:平均查找N/2步,移动N/2步
大O表示法旨在表达出算法执行的步骤和节点数量之间的关系,并剔除固定常数,通常用于表达时间复杂度.