Appearance
3.函数的增长
3.1 渐进记号
3.1.1 记号
用于描述函数渐近紧确界的数学符号,同时给出函数的上界和下界,表示函数在足够大的输入规模下 的精确增长趋势。
- 定义: 对于函数
和 ,若存在正常数 , 和 ,使得所有 满足:
则称
- 直观理解:
- 上下界同时存在:
记号表示 的增长速度,既不会快于 的某个倍数, 也不会慢于 的某个倍数。 - 排除低阶项: 例如,若
,则 ,因为当 足够大时, 主导了整体增长。
3.1.2 记号
用于描述函数渐近上界的数学符号,表示函数在足够大的输入规模下的最坏增长趋势。
- 定义: 对于函数
和 ,若存在正常数 和 ,使得所有 满足:
则称
- 直观理解:
记号表示 的增长速度,不会快于 的某个倍数。 - 核心特点:
- 忽略低阶项: 同
记号, 记号也忽略低阶项。 - 隐藏常数因子:
记号通常不关心具体常数(例如, 和 均为 )。 - 非紧确上界:
记号允许上界比实际增长更宽松(例如, 既是 也是 )。
- 忽略低阶项: 同
3.1.3 记号
用于描述函数渐近下界的数学符号,表示函数在足够大的输出规模下的最佳增长趋势。帮助我们理解 算法在最优情况或平均情况下的最优效率,与
- 定义: 对于函数
和 ,若存在正常数 和 ,使得所有 满足:
则称
- 直观理解:
记号表示 的增长速度至少为 的某个倍数 。关注的是最优情况 或平均情况下的增长趋势。 - 核心特点:
- 忽略低阶项: 同
记号, 记号也忽略低阶项。 - 隐藏常数因子: 同
记号, 记号也不关心具体常数。 - 非紧确下界:
记号允许下界比实际增长更宽松(例如, 既是 也是 )。
- 忽略低阶项: 同
3.1.4 总结
三者为包含关系:
| 记号 | 名称 | 约束条件 | 直观理解 | 示例 |
|---|---|---|---|---|
| Big-O | 最多增长到( | |||
| Big-Omega | 至少增长到( | |||
| Big-Theta | 精确增长到( |