深入快速排序[Quick][三]最坏时间复杂度

本文详细解析了快速排序算法在最坏情况下的工作原理,包括每次划分选取基准的方法、划分过程及其带来的比较次数的最大值,最终得出比较次数达到 ( O(n^2) ) 的结论。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最坏情况是每次划分选取的基准都是当前无序区中最小(或最大)的记录。

划分的结果是基准左边的子区间为空(或右边的子区间为空),而划分所得的另一个非空的子区间中记录数目,仅仅比划分前的无序区中记录个数减少一个。

因此,快速排序必须做n-1次划分,第i次划分开始时区间长度为n-i+1,所需的比较次数为n-i(1≤i≤n-1),故总的比较次数达到最大值:

Cmax = n(n-1)/2=Cmax = n(n-1)/2=O(n2)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值