又周末,无聊又写写快排~
void QSort(int array[],int p,int q)
{
int begin = p;
int end = q;
int mid_value =array[begin];
if (begin>=end)
{
return;
}
while (begin<end)
{
while((begin<end)&(array[end]>=mid_value))
{
end--;
}
if ((begin<end))
{
array[begin] = array[end];
}
while((begin<end)&(array[begin]<=mid_value))
{
begin++;
}
if (begin<end)
{
array[end] = array[begin];
}
}
array[end] = mid_value;
QSort(array,p,begin-1);
QSort(array,end+1,q);
return;
}
int _tmain(int argc, _TCHAR* argv[])
{
int a[] = {11,3,51,7,4,61,98,31,67,3,781,11};
QSort(a,0,(sizeof(a)/sizeof(a[0]))-1);
return 0;
}