常用的排序算法的时间复杂度和空间复杂度
小结:
1. 平均时间复杂度为O(nlogn)的几个算法:快些归队(快速,希尔,归并,堆排序)
2. 稳定性-- 不稳定的算法:快些建堆!(快速,希尔,简单选择,堆排序)
查找算法时间复杂度
查找 |
平均时间复杂度 |
查找条件 |
算法描述 |
顺序查找 |
O(n) |
无序或有序队列 |
按顺序比较每个元素,直到找到关键字为止 |
二分查找(折半查找) |
O(logn) |
有序数组 |
查找过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜素过程结束;如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从中间元素开始比较。 如果在某一步骤数组为空,则代表找不到。 |
二叉排序树查找 |