排序之简单的快速排序

Posted mykonons

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了排序之简单的快速排序相关的知识,希望对你有一定的参考价值。

  写的非常简单 看看思路就可以 

//6 1 2 7 9 3 4 5 10 8
#include<stdio.h>
int a[100],n;
void quick(int l,int r)
{
int i,j,temp,t;
if(l>r)
{
return;
}
temp=a[l];
i=l;
j=r;
while(i!=j)
{
while(temp<=a[j]&&i<j)
{
j--;
}
while(temp>=a[i]&&i<j)
{
i++;
}


t=a[j];
a[j]=a[i];
a[i]=t;


}

a[l]=a[i];
a[i]=temp;

quick(1,i-1);
quick(i+1,r);


}
int main()
{
int n,i,j;
printf("请输入数字个数:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&a[i]);
}
quick(1,n);
for(i=1;i<=n;i++)
{
printf("%d ",a[i]);
}
return 0;

}

以上是关于排序之简单的快速排序的主要内容,如果未能解决你的问题,请参考以下文章

排序之简单的快速排序

排序算法之快速选择排序

交换排序算法之快速排序

排序算法之交换排序(冒泡排序快速排序)

算法-排序系列04之快速排序

八大排序之快速排序