-1
什麼是錯的這個快速排序的代碼,我的得到錯誤的輸出一定的輸入情況:什麼是錯在這個快速排序的代碼
#include<stdio.h>
void quick_sort(int A[],int start,int end)
{
int pIndex;
if(start<end)
{
pIndex=partion(A,start,end);
quick_sort(A,start,pIndex-1);
quick_sort(A,pIndex+1,end);
}
}
int partion(int A[],int start,int end)
{
int i,temp,pIndex=start;
int pivot=A[end];
for(i=start;i<end;i++)
{
if(A[i]<=pivot)
{
temp=A[i];
A[i]=A[pIndex];
A[pIndex]=A[i];
pIndex++;
}
}
temp=A[pIndex];
A[pIndex]=A[end];
A[end]=temp;
return pIndex;
}
int main()
{
int A[100],size,i;
scanf("%d\n",&size);
for(i=0;i<size;i++)
{
scanf("%d",&A[i]);
}
quick_sort(A,0,size-1);
for(i=0;i<size;i++)
{
printf("%d\t",A[i]);
}
return 0;
}
我得到錯誤的輸出以下輸入: Output
我應該怎麼做才能按升序獲得排序
它不排序在[全部](http://ideone.com/tCoTjM)。 – Michi
請勿將文本輸入和輸出添加爲圖像。 (除非你真的把這個JPEG作爲輸出,這將是相當令人驚訝的。) – usr2564301