大O表示法指出的是最糟糕情况下的运行时间
一些常见的大O运行时间
- O(logn), 对数时间,比如二分查找
- O(n),线性时间,比如简单查找
- O(n*logn), 比如快速排序
- O(n^2), 比如选择排序
- O(n!), 很慢,旅行商问题
数组和链表操作的复杂度
| 操作 | 数组 | 链表 |
|---|---|---|
| 查找 | O(1) | O(n) |
| 插入 | O(n) | O(1) |
| 删除 | O(n) | O(1) |
插入和删除都是仅考虑当前操作的复杂度,实际上如果链表是中间插入或删除也要考虑查找的复杂度。
本文深入探讨了大O表示法的概念及其在评估算法效率中的应用,列举了常见的时间复杂度,如O(logn)、O(n)、O(n^2)等,并对比了数组和链表在查找、插入和删除操作上的复杂度差异。
大O表示法指出的是最糟糕情况下的运行时间
一些常见的大O运行时间
数组和链表操作的复杂度
| 操作 | 数组 | 链表 |
|---|---|---|
| 查找 | O(1) | O(n) |
| 插入 | O(n) | O(1) |
| 删除 | O(n) | O(1) |
插入和删除都是仅考虑当前操作的复杂度,实际上如果链表是中间插入或删除也要考虑查找的复杂度。
2073

被折叠的 条评论
为什么被折叠?