基本概念——什么是算法?
一.定义
一个接受或者不需要输入的有限指令集,一定会产生输出,且在有限步骤后终止;指令的特点:有明确目标,不能有歧义;在计算机能处理的范围之内;描述应不依赖于任何一种计算机语言以及具体的实现手段
二.指标
1.空间复杂度 S(n):根据算法写成的程序在执行时占用存储单元的长度。S(n)过高可能导致内存超限,程序非正常中断
2.时间复杂度 T(n)根据算法写成的程序在执行时耗费时间的长度。
这两者往往都与输入数据规模有关
eg1:
3.什么是好的算法?
在分析一般算法的效率时,经常关注两种复杂度:最坏情况复杂度 和平均复杂度
最坏情况复杂度比较简单,容易计算
三.复杂度的渐进表示法
1. T(n)=O(f(n))表