QSort إلى C فرز سريع

#include < stdio.h> < فرع />#include < stdlib.h> < فرع />#include < الرياضيات> 

int T[10]={5,2,9,7,1,6,12,51,24,18};

int partition (int * T ، int prime ، int last) {
int pivot = T [الأول] ، i = prime-1 ، j = الأخير + 1 ؛
int temp;
بينما (صحيح) {
do
j--;
بينما (T [j] > محور) ؛
do
i ++ ؛
بينما (T [i] < محور) ؛
if (i < j) {
temp = T[i];
T[i] = T[j];
T [j] = temp;
}
else
return j ؛
}
}

void tri_rapide (int T [] ، int first ، int last)
{
int pivot ؛
if (الأول < الأخير)
{
pivot = partition (T ، الأول ، الأخير) ؛
tri_rapide (T ، الأول ، المحور -1) ؛
tri_rapide (T ، المحور + 1 ، الأخير) ؛
}
}

int main()
{
tri_rapide(T,0,9);
ل (int i=0 ; i< 10 ; i++)
printf("٪d ",T[i]);
العودة 0 ؛
}