以下是完整的代码:希望对楼主有所帮助~~
#include
#include
int Partition (int a[], int low, int high)
{
int key;
key = a[low];
while(low < high)
{
while(low < high && a[high] >= key)
--high;
a[low] = a[high];
while(low < high && a[low] <= key)
++low;
a[high] = a[low];
}
a[low] = key;
return low;
}
void QSort(int a[], int low, int high)
{
if( low < high)
{
int i;
i = Partition( a, low, high);
QSort( a, low, i-1);
QSort( a, i+1, high);
}
}
int main(void)
{
int i;
static int a[12]={13,19,9,5,12,8,7,4,11,2,6,21};
printf(
void quickSort(char* arr,int startPos, int endPos)
{
int i,j;
char ch;
ch=arr[startPos];
i=startPos;
j=endPos;
while(i
while(arr[j]>=ch && i
while(arr[i]<=ch && i
}
arr[i]=ch;
if(i-1>startPos) quickSort(arr,startPos,i-1);
if(endPos>i+1) quickSort(arr,i+1,endPos);
}
void main()
{
char ch[]="qwertyuiopasdfghjklzxcvbnm";
quickSort(ch,0,25);
printf("\n%s\n",ch);
}