#include <stdio.h>
#define MAXSIZE 10
void BubbleSort(int num[], int len);
void Swap(int* a, int* b);
void QSort(int num[], int l, int r);
int main(){
int a[MAXSIZE];
int i;
for(i = 0; i < 10; i++)
{
scanf("%d", &a[i]);
}
//BubbleSort(a, MAXSIZE);
QSort(a, 0, 9);
for(i = 0; i < 10; i++)
{
printf(" %d", a[i]);
}
printf("\n");
}
void BubbleSort(int num[], int len){
int i, j, flag = 0, temp;
for(i = 0; i < len-1; i++)
{
flag = 0;
for(j = 1; j < len-i; j++){
if(num[j] < num[j-1]){
Swap(&num[j], &num[j-1]);
flag = 1;
}
}
if(flag == 0)
break;
}
}
void QSort(int num[], int l, int r){
if(l < r){
int i = l, j = r, temp = num[l];
while(i < j){
while(num[j] >= temp && i < j)j--;
if(i < j) num[i++] = num[j];
while(num[i] <= temp && i < j) i++;
if(i < j)num[j--] = num[i];
}
num[i] = temp;
QSort(num, l, i-1);
QSort(num, i+1, r);
}
}
void Swap(int* a, int* b){
int temp;
temp = *a;
*a = *b;
*b = temp;
}
排序
最新推荐文章于 2022-04-29 23:24:15 发布