- 4
- 0
- 约3.44千字
- 约 22页
- 2017-09-06 发布于安徽
- 举报
--(完美WORD文档DOC格式,可在线免费浏览全文和下载)值得下载!
算法和复杂度 1.4-1.6 算法和复杂度 算法效率的衡量方法1 事后统计 利用计算机内记时功能。 缺点: ?必须先运行依据算法编制的程序; ?所得时间统计量依赖于硬件、软件等环境因素,掩盖算法本身的优劣 算法效率的衡量方法2 事前分析估计 一个高级语言程序在计算机上运行所消耗的时间取决于:?依据的算法选用何种策略?问题的规模?程序语言?编译程序产生机器代码质量?机器执行指令速度 时间复杂度和空间复杂度 算法的时间度量 从算法中选取一种对于研究的问题来说是基本操作的原操作,以该基本操作重复执行的次数作为算法执行的时间度量。 算法复杂度 问题的规模(n):或大小。如:矩阵的阶数、图的结点个数、被分类序列的正整数个数…… 时间复杂度:算法的所需的时间和问题规模的函数。记为 T(n)。当 n- ∞ 时的时间复杂性,被称之为渐进时间复杂度。 空间复杂度:算法的所需的空间和问题规模的函数。记为 S(n)。当 n- ∞ 时的时间复杂性,被称之为渐进空间复杂度。 大O符号 给定两个正值函数 f 和 g,考虑以下定义: 定义1: 如果存在正数c和N,对于所有的n≥N,有f(n)≤cg(n), 则f(n)=O(g(n))。 上述定义表明,如果对于足够大的n,或大于某自然数N的n,存在正数c,使 f 不大于cg,则 f 是g的大O符号。 大O符号 例如:
原创力文档

文档评论(0)