首页 > 编程知识 正文

快速排序的时间复杂度为,快速排序最坏情况时间复杂度

时间:2023-05-04 13:13:01 阅读:20644 作者:3177

快速排序和大o表示1快速排序递归版

defquick_sort(arr ) :

iflen(arr ) 2:

返回警报--------- -这就是基线条件

else :

a=arr[0]

smaller=[ iforiinarr [ 1: ] ifia ]

bigger=[ iforiinarr [ 1: ] ifia ]

返回quick _ sort [ small ler ] [ a ] quick _ sort [ bigger ]

2最坏情况下的时间复杂度为o(n ),平均复杂度为o ) O(nlogn ),

这里的n和logn分别表示调用堆栈的高度和到各层完成为止的时间,用a取

数组的第一个项目是最坏的情况,完成各层所需的时间为n,堆栈的高度

是n。 时间的复杂性是n。 取得中间价值时,完成各层的时间是

n,但由于调用堆栈的高度为logn,因此此时时间复杂度为nlogn

3选择排序的时间复杂性是o(n )

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。