#include <stdio.h>
#include <stdlib.h>
#define MAXN 100
int a[MAXN + 1], n;
void QuickSort(int left, int right)
{
int i, j, t, temp;
if(left > right)
return;
temp = a[left];
i = left;
j = right;
while(i != j)
{
while(a[j] >= temp && i < j)
{
j--;
}
while(a[i] <= temp && i < j)
{
i++;
}
if(i < j)
{
t = a[i];
a[i] = a[j];
a[j] = t;
}
}
a[left] = a[i];
a[i] = temp;
QuickSort(left, i - 1);
QuickSort(i + 1, right);
}
int main()
{
printf("=========快速排序版本一==========\n");
int i = 0, j, t, count = 0;
int T;
printf("请输入要对数据排序的个数:\n");
scanf("%d", &T);
while(T--)
{
scanf("%d", &a[i]);
i++;
}
QuickSort(0, i - 1);
printf("排序后的数据是:\n");
for(j = 0; j < i; j++)
{
printf("%d ", a[j]);
}
return 0;
}
C语言之快速排序实现
猜你喜欢
转载自blog.csdn.net/Fayeni/article/details/94049634
今日推荐
周排行