快速排序算法函數

<strong>// C /C++ 快速算法函數片段</strong>
</pre><pre code_snippet_id="555789" snippet_file_name="blog_20141218_3_3102174" name="code" class="objc"><span style="font-size:18px;">void QuickSort(int a[],int numsize)
{
	int i=0,j=numsize-1;
	int val=a[0];
	if(numsize > 1)
	{
		while (i<j)
		{
			for(;j>i;j--)
				if(a[j]<val)
				{
					a[i++] = a[j];
					break;
				}
			for(;i<j;i++)
				if(a[i]>val)
				{
					a[j--] = a[i];
					break;
				}
		}
		a[i] = val;
		QuickSort(a,i);
		QuickSort(a+i+1,numsize-i-1);
	}
}</span>
//快速排序的時間複雜度爲O(nlogn)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章