本帖最后由 刘腾 于 2012-11-11 23:04 编辑
- //对数组{2,345,111,1,34,5}的选择排序
- class Select
- {
- public static void main(String[] args)
- {
- int[] arr={2,345,111,1,34,5};
- selectSort(arr);
- System.out.println("排序后的数组为:");
- printarr(arr);
- }
- public static void selectSort(int[] arr)
- {
- int temp=0;
- int min=0;
- for(int i=0;i<arr.length-1;i++)
- {
- min=i;
- for(int j=i+1;j<arr.length;j++)
- {
- if(arr[i]>arr[j])
- min=j;
- }
- temp=arr[min];
- arr[min]=arr[i];
- arr[i]=temp;
-
- }
- }
- public static void printarr(int[] arr)
- {
-
- for (int i=0;i<arr.length;i++)
- {
- System.out.print(arr[i]+" ");
- }
- }
-
- }
- // 输出的结果是 1 5 34 2 111 345 (问题:为什么呢?不是 1 2 5 34 111 345)
复制代码 在看自学视频,这个地方有点晕呀,新手 ,求帮忙,看下这个排序哪个步骤出问题了,谢谢了
|