关于C语言的选择法的问题,希望好心人来帮助,在线等
关于C语言的选择法的问题,希望好心人来帮助,在线等
日期:2010-09-25 20:27:30 人气:2
对于长度为N的数组,数组下标是0到N-1,
如果对这N个数组用选择排序法进行排序,
用的是双重循环,就如你的程序
对i循环之所以只循环到N-2(i<N-1)是因为里面的一个对j的循环
j的初始位置是i+1,所以当i循环到N-2是,j=i+1=N-1,
然后对array[i]和array[j]比较大小
如果i循环到N-1,那么下面j的初始位置将为i+1=N
这时就导致了数组越界的情况,所以i只需要循环到N-2
即for(i=0;i<n-1;i++){/**/}