1 #include<stdio.h> 2 #include<stdlib.h> 3 4 int a[7] = { 4,8,33,-3,34,55,10 }; 5 6 int FindPos(int *a, int low, int high) 7 { 8 int val = a[low]; 9 while (low < high) 10 { 11 while (a[high] >= val && low < high) 12 high--; 13 a[low] = a[high]; 14 while (a[low] <= val && low < high) 15 low++; 16 a[high] = a[low]; 17 } 18 a[low] = val; 19 return low; 20 } 21 void QuickSort(int *, int low, int high) 22 { 23 int pos; 24 if (low < high) 25 { 26 pos = FindPos(a, low, high); 27 QuickSort(a, low, pos - 1); 28 QuickSort(a, pos + 1, high); 29 } 30 } 31 int main(void) 32 { 33 int i; 34 QuickSort(a, 0, 6); 35 for (i = 0; i < 7; i++) 36 { 37 printf("%d ", a[i]); 38 } 39 printf("\n"); 40 system("pause"); 41 return 0; 42 }
一种快排的C语言实现
猜你喜欢
转载自www.cnblogs.com/bigdapi/p/9745888.html
今日推荐
周排行