各个常见算法的时间复杂度

哈希表的插入时间复杂度平均O(1),最好O(1),最差O(n)。
排序链表的插入时间复杂度平均O(n),最好O(1),最差O(n)。
数组的查询时间复杂度平均O(n),最好O(1),最差O(n)。
二叉树的查询时间复杂度平均O(logn),最好O(logn),最差O(n)。
二叉查找树的时间复杂度平均O(logn),最好O(logn),最差O(logn)。
二叉平衡树的时间复杂度平均O(logn),最好O(logn),最差O(logn)。
红黑树的时间复杂度平均O(logn),最好O(logn),最差O(logn)。
快排的时间复杂度平均O(nlogn),最好O(nlogn),最差O(n2)。
冒泡排序的时间复杂度平均O(n2),最好O(n),最差O(n2)。
插入排序的时间复杂度平均O(n2),最好O(n),最差O(n2)。
选择排序的时间复杂度平均O(n2),最好O(n2),最差O(n2)。
归并排序的时间复杂度平均O(nlogn),最好O(nlogn),最差O(n*logn)。
希尔排序的时间复杂度最好O(n),最差O(n2)。

上一篇:算法学习笔记 初识时间复杂度


下一篇:算法的时间复杂度和空间复杂度详解