算法的效率取决于两个参数:
1.时间复杂度
2.空间复杂性
时间复杂度:时间复杂度定义为执行特定指令集的次数而不是总时间。这是因为所花费的总时间还取决于一些外部因素,例如所使用的编译器,处理器的速度等。
空间复杂度:空间复杂度是程序执行所需的总存储空间。
两者均根据输入size(n)的函数进行计算。
这里重要的一点是,尽管有这些参数,算法的效率也取决于输入的性质和大小。
以下是您可以在最后一刻参考的快速修订表
Algorithm | Time Complexity | |||
---|---|---|---|---|
Best | Average | Worst | ||
Selection Sort | Ω(n^2) | θ(n^2) | O(n^2) | |
Bubble Sort | Ω(n) | θ(n^2) | O(n^2) | |
Insertion Sort | Ω(n) | θ(n^2) | O(n^2) | |
Heap Sort | Ω(n log(n)) | θ(n log(n)) | O(n log(n)) | |
Quick Sort | Ω(n log(n)) | θ(n log(n)) | O(n^2) | |
Merge Sort | Ω(n log(n)) | θ(n log(n)) | O(n log(n)) | |
Bucket Sort | Ω(n+k) | θ(n+k) | O(n^2) | |
Radix Sort | Ω(nk) | θ(nk) | O(nk) |
另请参阅:
- 搜索和排序文章
- 去年的GATE排序问题