void QuickSort(int* a, int begin,int end)
{
if (begin >= end)
return;
int left = begin;
int right = end;
int key = left;
while (left < right)
{
while (left < right && a[right] >= a[key])
right--;
while (left < right && a[left] <= a[key])
left++;
if (left < right)
Swap(&a[left], a[right]);
}
int meet = left;
Swap(&a[key], &a[meet]);
QuickSort(a, begin, meet - 1);
QuickSort(a, meet + 1, end);
}
相关文章
- 09-23python实现归并排序算法
- 09-23用函数实现冒泡法排序算法,函数原型为:void BubbleSort(int *a, int n);在 主程序中调用为输入的数组排序。
- 09-23python 数据结构与算法之排序(冒泡,选择,插入)
- 09-23[剑指offer]25.合并两个排序的链表(迭代+递归)
- 09-23快速排序 Quick Sort
- 09-23模板——快速傅里叶变换(递归)
- 09-23快速排序
- 09-23快速排序与归并排序
- 09-23python leetcode 斐波那契数列 动态规划 递归 算法
- 09-23【Mac OS开发】使用gcd快速排序数组,使用gcd多线程查找数组中的最大值