求大神帮忙,有关选择排序的问题,为什么要定义一个变量int key=array[low];还要这样使用if(array[j]
int minkey(int *array, int low,int high)//选择排序
{
int min=low;
int j;
int key=array[low];
for(j=low+1;j<high;j++)
{
if(array[j]<key)//为什么不能使用array[low]
{
key=array[j];//这里也一样
min=j;
}
}
return min;
}
void select(int *array,int n)//选择排序
{
int i;
for(i=0;i<n;i++)
{
int j=minkey(array,i,n);
if(i!=j)
{
swap(&array[i],&array[j]);
}
}
}
void swap(int *a,int *b)//数据的顺序交换
{
int temp=*a;
*a=*b;
*b=temp;
}