插入排序及其复杂度理解

快排

复习了(取中间的值作为轴值,小的放左边,大的放右边,递归下去,当拆分数组长度=1,就可以结束了)

复杂度理解

最好情况下,时间复杂度为O(nlgn).用递归树来分析最好情况下的比较次数更简单。因为每次划分后左、右子区间长度大致相等,故递归树的高度为 O(lgn),而递归树每一层上各结点所对应的划分过程中所需要的关键字比较次数总和不超过n,故整个排序过程所需要的关键字比较总次数 C(n)=O(nlgn)
    最坏情况,当每次分割的两个子序列中有一个为空,即初始序列有序(顺序或逆序),这时快速排序效率最低,时间复杂度为O(n^2)

猜你喜欢

转载自xingqinstar.iteye.com/blog/1738813
今日推荐