大 O 表示法用于根据算法的运行时间或空间需求如何随着输入大小的增长而增长来对算法进行分类。 在下面的图表中,您可能会发现大 O 表示法中指定的算法最常见的增长顺序。
下面是一些最常用的 Big O 表示法的列表,以及它们与不同大小的输入数据的性能比较。
| 大 O 符号 | 类型 | 10 个元素的计算 | 100 个元素的计算 | 1000 个元素的计算 |
|---|---|---|---|---|
| O(1) | 常数 | 1 | 1 | 1 |
| O(log N) | 对数 | 3 | 6 | 9 |
| O(N) | 线性 | 10 | 100 | 1000 |
| O(N log N) | n 对数 (n) | 30 | 600 | 9000 |
| O(N^2) | 二次方 | 100 | 10000 | 1000000 |
| O(2^N) | 指数 | 1024 | 1.26e+29 | 1.07e+301 |
| O(N!) | 阶乘 | 3628800 | 9.3e+157 | 4.02e+2567 |