資料結構之poj2388

傲嬌的小鬍子發表於2016-06-05

第一眼看是快排思想,於是複習了快排!

複習了快排程式碼:

void quicksort(int a[], int low,int high)
{
	//low,high分別代表要排序的陣列上限和下限
	if(low>=high)
		return;
	int first=low;
	int last=high;
	int key=a[first];
	while(first<last)
	{
		while(first<last&&a[last]>=key)
			last--;
		a[first]=a[last];
		while(first<last&&a[first]<=key)
			first++;
		a[last]=a[first];
	}
	a[first]=key;//到此為止,first左邊的那些值都比key小,右邊的那些值都比key大
	quicksort(a,low,first-1);
	quicksort(a,first+1,high);
}
然後編譯錯誤,我心痛啊!結果是因為最後輸出忘加回車!!!一定要記住!!!

然後發現有現成的函式啊!sort函式是<algorithm>裡的,但是根本沒快排耗時短!

而且可以動態申請陣列,int *milk=new int[n];

就醬~


相關文章