26算法时间复杂度.ppt

26算法时间复杂度

算法时间复杂度 (The Complexity of Algorithms) * 算法时间复杂度的数学意义 ????? 从数学上定义,给定算法A,如果存在函数f(n),当n=k时,f(k)表示算法A在输入规模为k的情况下的运行时间,则称f(n)为算法A的时间复杂度。 其中:输入规模是指算法A所接受输入的数据量的多少 算法效率分析 对于同一个算法,每次执行的时间不仅取决于输入规模,还取决于输入的特性和具体的硬件环境在某次执行时的状态。所以想要得到一个统一精确的F(n)是不可能的。为此,通常忽略硬件及环境因素,假设每次执行时硬件条件和环境条件是完全一致的。 ????? 影响程序运行时间的因素 机器的速度(假设完全一样) 算法的好坏 输入数据规模 程序运行时间 运行时间 = 执行次数 * 每次执行所需的时间。 由于每次执行所需的时间必须考虑到机器和编译程序的功能,因此通常只考虑执行的次数而已。 例如: x=x+1; for (i=1; i = n; i++) for(i=1; i=n; i++) x=x+1; for(j=1; j=n; j++)

文档评论(0)

1亿VIP精品文档

相关文档