数据结构-快速排序的实现
程序员文章站
2024-02-29 08:07:58
...
快速排序采用的是分治策略,它是目前已知的排序速度最快的一种排序方法。
void Quick_Sort(DataType R[],int low,int high)
{
int i=low,j=high;
DataType temp = a[low];
if (i < j)
{
while ((i < j)&&(temp.key <= a[j].key)) //从数组的右端扫描
{
j++;
}
if (i < j)
{
a[i] = a[j];
i++
}
while ((i < j)&&(temp.key <= a[j].key)) //从数组的左端扫描
{
i++;
}
if (i < j)
{
a[j] = a[i];
j++
}
a[i] = temp;
if (low < i)
{
Quick_Sort(a, low, i-1); //对左端子集合进行递归
}
if (i < high)
{
Quick_Sort(a, j+l, high); //对右端子集合进行递归
}
}
上一篇: LeetCode 剑指 Offer 07. 重建二叉树
下一篇: 面试题28.对称的二叉树。2星