快速排序中小文件采用插入排序
2015-06-10 16:14
288 查看
减少小文件在递归调用中的进栈和出栈的时间可以提高快速排序的效率,非递归调用中同样存在小文件排序时候的进栈出栈操作。
一种显然的的方法就是在递归调用之前,检测是否为小文件排序,如果是的话,才用插入排序方法进行小文件排序。
愿快速排序方法为
一种显然的的方法就是在递归调用之前,检测是否为小文件排序,如果是的话,才用插入排序方法进行小文件排序。
void quicksort_smallFile(Item a[], int l, int r) //小文件排序采用插入排序方法 { int i; if(r-l <= M) { insertSort(a, l, r); return; //递归返回条件 } i = partition(a, l, r); quicksort(a, l, i-1); quicksort(a, i+1, r); }
愿快速排序方法为
void quicksort(Item a[], int l, int r) { int i; if(r<=l) return; //递归返回条件 i = partition(a, l, r); quicksort(a, l, i-1); quicksort(a, i+1, r); }
相关文章推荐
- MDT 2013 从入门到精通之启动映像添加
- BeagleBone折腾记(一):连接你的狗板
- 快速排序的非递归实现
- 女子透支信用卡300万买奢侈品
- 如何预置某个浏览器为系统默认的浏览器?
- 数据库学习之--RedHat EL55下Mysql源码包安装
- Linux关闭IPV6
- sgu260:Puzzle(高斯消元)
- vs创建类默认生成创建人信息
- Cocos2d-x网络篇01:网络基本概念
- 2015/6/9 站立会议(写好了昨天忘记发了今天补上)
- art.dialog
- 2-2点阵格式图像
- [LA 3887] Slim Span
- PHP安装FastDFS扩展,测试上传文件
- IOS之OC入门--类方法和对象方法
- C#解析json文件的方法
- Uva - 133 - The Dole Queue
- Struts2学习笔记(4)——struts2的Action详解
- Android--第二天(项目安装启动,电话拨号器,用户通知,短信发送器,数据存储与访问)