最好时间复杂度:当前数组满足该算法的某些需求时,所能达到的最优,之前我以为是一个排好序的数组用该算法所需要的时间
比如 快速排序 的最好时间复杂度
即每次partition都能选取到一个刚好在中间的base,这样数组就会不断被分成两段,类似于二分法,最终时间复杂度为nlogn
最坏时间复杂度
继续以快排为例,如果每一次的base都选到最小的,则相当于没有左分支,只剩下一个贼大的右分支,长度为n-1,经过递归计算,时间复杂度为n²
平均时间复杂度
以快排为例,比较麻烦,我总结一下就是每种划分方法占同样概率,计算期望,参考此处详细内容