- class ArrayTest2
- {
- public static void selectSort(int[] arr)
- {
- for (int x=0;x<arr.length-1;x++ )
- {
- for (int y=x+1;y<arr.length ;y++)
- {
- if (arr[x]>arr[y]);
- {
- int temp = arr[x];
- arr[x] = arr[y];
- arr[y] = temp;
- }
- }
- }
- }
- /*
- 此处是正确的排序代码
- public static void selectSort(int[] arr) //选择排序
- {
- for (int x=0;x<arr.length-1 ;x++ )
- {
- for (int y=x+1;y<arr.length ;y++ )//x+1 1角标和2角标比较
- {
- if(arr[x]>arr[y])
- {
- int temp = arr[x];
- arr[x] = arr[y];
- arr[y] = temp;
- }
- }
- }
- }
- */
- public static void main(String[] args)
- {
- int[] arr = {5,1,6,4,2,8,9};
- //int selectSort = selectSort(arr);
- //System.out.println("selectSort="+selectSort);
- selectSort(arr);
- printArray(arr);
- }
- public static void printArray(int[] arr)
- {
- System.out.print("[");
- for (int x=0;x<arr.length ;x++ )
- {
- if (x!=arr.length-1)
- {
- System.out.print(arr[x]+",");
- }
- else
- System.out.print(arr[x]+"]");
- }
- }
- }
复制代码 复习的时候自己动手写了一次选择排序,但是编译出来的结果:[9,8,2,4,6,1,5] 是把arr的倒着打印了一次,后来查看视频照着把代码写了下来,对照着没发现有哪不对,而且试过新建java程序,把出错的代码拷贝,编译结果还是倒着打印。我怀疑是不是这几天感冒影响的 哈哈。备注里边是正确的排序代码,请哪位有时间的前辈指导一下。 |
|