快速排序(递归)算法

2021/12/13 22:46:43

本文主要是介绍快速排序(递归)算法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

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);
}



这篇关于快速排序(递归)算法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程