目录:
一 算法描述
二 代码实现
三算法分析
一算法描述
知识储备:需要了解递归和分治法
快速排序思路:在数组中找到一个元素(节点),比它小的放在左边,比节点大的放在右边,不断执行这个操作
算法执行步骤描述:
1.从数组中挑出一个元素,称之为基准
2.重新排列数组,所有元素比基准小的摆放在基准前面,所有元素比基准大的摆放在基准后面(相同的数可以到任何一边),在这个分区退出后,该基准就处于数组的中间位置了
3,递归的把小于基准元素的子数列和大于基准的子数列排序
代码实现
三 算法分析:
最佳情况:T(n)=O(nlogn)
最差情况:T(n)=O(n2)
平均情况下:T(n)=O(nlogn)
相关文章: