java吧 关注:1,269,016贴子:12,773,203
  • 3回复贴,共1

求大神帮忙解答下这行代码的原理

只看楼主收藏回复

这是选择排序法的代码
我想问下 第11行的 j<arr.length为什么不是 j<arr.length-i-1
1.class Select
2.{
3. public void sort(int arr[])
4. {
5. int temp=0;
6. for(int i=0;i<arr.length-1;i++)
7. {
8. int min=arr[i];
9. //记录最小数的下标
10. int minIndex=i;
11. for(int j=i+1;j<arr.length;j++)
12. {
if(min>arr[j])
{
//修改最小
min=arr[j];
minIndex=j;
}
}
//当退出for就找到这次的最小值
temp=arr[i];
arr[i]=arr[minIndex];
arr[minIndex]=temp;
}
}
}


IP属地:陕西1楼2016-01-26 22:24回复
    遍历数组难道不是 j<arr.length


    IP属地:湖北2楼2016-01-26 22:39
    收起回复