選擇法的本質:不想冒泡法一個一個的交換,選擇法,是先找出i小的數字找出來,然後,跟第i個數交換一下。一輪子循環頂多值交換一次
如:
6 3 1 4 2
i=0 ,找出最小的數,再跟第0個數交換 如1和6交換 1 3 6 4 2
i=1,找出第二小的數,再跟第1個數交換,如3和2交換 1 2 5 4 3
i=3,找出第三小的數,在跟第2個數交換,如5和3 交換 1 2 3 4 5
i=4 第四小的數字已經成立,不需要交換
void exchang_sort(int a[],int n)
{
int i=0,j=0;
int temp,Min_indext;
for (i=0;i<n-1,i++)
{
index =i;
for(j=i+1;j<n;j++)
if(a[Min_index]>a[j])
{
Min_index=j ;
}
if(i!=Min_index)
{
temp=a[i];
a[i]=a[Min_index];
a[Mind_dex]=temp;
}
}
}