快速排序实现

来源:互联网 发布:mac safari不显示图片 编辑:程序博客网 时间:2024/05/18 20:46

快速排序实现:

具体代码:

#include <stdio.h>void QuickSort(int a[],int I,int J){int temp;int i=I,j=J;if(i<j){temp=a[i];while(i!=j){while(i<j&&a[j]>temp) --j;//从右开始找比temp小的数(准备放到左边去) if(i<j){a[i]=a[j];++i;}   while(i<j&&a[i]<temp) ++i;//从左开始找比temp大的数(准备放到右边去)    if(i<j){  a[j]=a[i];  --j;   }    }a[i]=temp; QuickSort(a,I,i-1); QuickSort(a,i+1,J);}}int main( ){int a[11]={49,38,65,97,76,13,27,354,2,490,33},I=0,J=11,i;QuickSort(a,I,J);for(i=0;i<11;i++){printf("%d ",a[i]);}return 0;}
输出结果:

2 13 27 33 38 49 65 76 97 354 490 请按任意键继续. . .



原创粉丝点击