排序算法学习- 快速排序
2009-12-01 22:48
232 查看
# include<iostream> void swap(int *a,int *b)//注意要传地址 { int tmp = 0; tmp = *a; *a = *b; *b = tmp; } int partition(int data[],int start,int end )//最后是 i到 j-1 的都是小于 data[end] { int i ,j; //data[0] = 1000; for(j = start,i = start;i < end; i ++) { if(data[i]<data[end]) { swap(&data[i],&data[j]); j++; } } swap(&data[end],&data[j]); return j; } void quicksort(int data[],int start,int end) { int mid = 0; if(start< end) { mid = partition(data,start,end); quicksort(data,start,mid-1); quicksort(data,mid+1,end); } } void printf(int data[]) { int len = 10,i ; for(i = 0;i < len ; i ++) printf("%d ",data[i]); } int main() { int data[10] = {10,-232,43422,5,632,72,3,55,12,132}; quicksort(data,0,9); printf(data); return 0; }
相关文章推荐
- 算法学习-排序算法-快速排序
- (三)几种排序算法的学习总结(快速排序)
- 排序算法学习——快速排序
- 排序算法学习之快速排序
- 经典排序算法学习笔记二——快速排序
- 记录自已学习之排序算法(快速排序)
- 八大排序算法及完整c代码—快速排序
- 排序算法——快速排序
- 排序算法--快速排序
- 记录自已学习之排序算法(冒泡排序)
- 排序算法之快速排序
- 【算法学习笔记】-排序算法
- 排序算法之快速排序
- java学习(5)-二维数组以及排序算法
- 矿Java开发学习之旅------>Java排序算法经典的二分法插入排序
- 排序算法之-快速排序
- 学习快速排序
- 八大排序算法学习笔记:插入排序(二分插入排序)
- 排序算法之快速排序
- 数据结构(Java 快速排序模拟)本代码重在学习数据结构思路,代码完整性欠缺,请见谅