void QuickSort(int R[], int low, int high)
{
int temp;
int i = low, j = high;
while (low < high)
{
temp = R[low];
while (j > i && R[j] >= temp)
--j; //找到一个小于temp的关键字
if (i < j)
{
R[i] = R[j]; //放在temp左边
++i; //i右移一位
}
while (i < j && R[i < temp])
++i; //找到一个大于temp的关键字
if (i < j)
{
R[j] = R[i]; //放在temp右边
--j; //j左移一位
}
R[i] = temp;
}
QuickSort(R,low,i-1); //处理temp左边
QuickSort(R,i+1,high); //处理temp右边
}
快速排序
最新推荐文章于 2024-09-20 17:00:23 发布