记录代码——快速排序
2013-08-19 10:06
155 查看
#include <iostream> #include <cstdio> using namespace std; void quick_sort(int array[],int left,int right){ if (left<right) { int i=left,j=right,tmp=array[i]; while(i<j){ while(i<j&&array[j]>=tmp){ j--; } if (i<j)//由于上面第二个条件不满足而跳出的循环,说明在后半部出现了比tmp小的数,他该移到前面来 { array[i++]=array[j];//此时i位的数已经保存过了 } while(i<j&&array[i]<tmp){ i++; } if (i<j) { array[j--]=array[i]; } } array[i]=tmp;//这个时候tmp找到自己的位置了 quick_sort(array,left,i-1); quick_sort(array,i+1,right); } } int main(){ int i,j,a[10]={9,8,7,6,5,4,3,2,1,0}; quick_sort(a,0,9); for (i=0;i<10;i++) { printf("%d ",a[i]); } return 0; }
相关文章推荐
- GIT : 记录IntelliJ IDEA 合并冲突时的一个bug(冲突解决后代码和本地仓库一样时导致merge失败)
- 代码审查 之 Redmine 一键安装配置过程记录
- java 代码随笔记录
- 记录一个php的html标签自动闭合的函数代码
- java后台代码常备记录总结
- PHP中设置时区,记录日志文件的实现代码
- PHP代码实现爬虫记录――超管用
- [Silverlight学习记录]Resources-2 (使用代码访问Silverlight资源)
- 一次代码重构记录
- 一周乱弹(1,HttpReques 获取请求地址2,去掉字符串中首尾空格及换行符、回车符等3,计算代码运行时间4,StringEscapeUtils对字符串进行各种转义与反转义5,分表查询记录总数)
- 冒泡、插入、归并、堆排序、快速排序的Java实现代码
- Java编程基于快速排序的三个算法题实例代码
- timus 1613. For Fans of Statistics【该题超时的代码记录】
- VB程序学习代码记录20160719
- 文字转语音代码记录
- BroadCast详解---第二行代码学习记录
- 算法-java代码实现快速排序
- ASP后台操作日志记录代码(搜集整理)
- cocos2d-x-2.1使用Xcode整合ios与android开发代码 - 过程记录