⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 quicksort.h

📁 改进的快速排序程序
💻 H
字号:
void QuickSort(unsigned int *pData , int left, int right)
{
	int i, j;
	int middle, iTemp;
	i = left;
	j = right;
	
	middle = pData[(left + right) / 2]; //求中间值
	do
	{
		while ((pData[i] < middle) && (i < right)) //从左扫描大于中值的数
			i++;
		while ((pData[j] > middle) && (j > left)) //从右扫描小于中值的数
			j--;
		if (i <= j) //找到了一对值
			{
				//交换
				iTemp = pData[i];
				pData[i] = pData[j];
				pData[j] = iTemp;
				i++;
				j--;
			}
		} while (i <= j) ; //如果两边扫描的下标交错,就停止(完成一次)
		
		//当左边部分有值(left<j),递归左半边
		if(left<j) 
			QuickSort (pData,left,j); 

		//当右边部分有值(right>i),递归右半边
		if(right>i) 
			QuickSort (pData,i,right); 
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -