设为首页 加入收藏

TOP

排序算法(1) 快速排序 C++实现
2015-02-25 16:15:36 来源: 作者: 【 】 浏览:32
Tags:排序 算法 快速 实现

关于快速排序的空间复杂度,谢谢@命运他爹 同学指正。详述一下。


快速排序由于每次递归的时候会占用一个空间返回中间数位置,所以一次递归的空间复杂度为O(1)。


最好情况和平均情况下的递归深度为O(lgn),相应的空间复杂度就是O(lgn)


最坏情况下的递归深度为O(n),空间复杂度为O(n)。


?


待排序数组:7? 3? 5? 9? 8? 5? 1? 10? 4? 6


?


clipboard


?


一趟排序过程分析:


?


1 quicksort一趟排序过程


?


类声明


?


相关成员函数实现


测试:


?


运行截图:


clipboard[4]


------------------------------分割线------------------------------


C语言梳理一下,分布在以下10个章节中:


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇深入理解C#泛型 下一篇排序算法(2) 堆排序 C++实现

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: