对一个数组进行选择排序,我自己写了一个方法,再加上了老师的一个方法,并将排序结果打印出来,两次的结果不一样。ps:分别指用一个方法都是正确的,为什么两个方法一起就是错的呢?代码如下:class ArrayPaiXu 
{ 
/*{5,1,6,4,2,8,9}排序并输出* 
分析: 
     1、该功能没有返回值; 
     2、不需要未知内容参与; 
*/ 
    public static void selectSort(int[] arr) 
    { 
        int[] myArray = new int[arr.length]; 
        int num =0; 
 
        for(int i=0;i<arr.length;i++) 
        { 
              int min = arr[i]; 
                    for(int j=i;j<arr.length;j++) 
                    { 
                    if(arr[j]<min) 
                    { 
                              num = arr[j]; 
                              arr[j] = min; 
                              min = num; 
                    } 
                    } 
                    myArray[i] = min; 
        } 
        for(int i=0;i<arr.length;i++) 
        { 
            System.out.print(myArray[i]); 
        }  
    } 
    //老师的方法 
    public static void selectSortT(int[] arr) 
    { 
             //int num = arr[0],num1 = 0; 
              
       for(int i=0;i<arr.length-1;i++) 
       { 
                   for(int j=i+1;j<arr.length;j++) 
                   { 
                     if(arr[i]>arr[j]) 
                           { 
                                     int temp = arr[i]; 
                                     arr[i] = arr[j]; 
                                     arr[j] = temp; 
                                      
                           }         
                          
                   } 
 
       }         
       for(int i=0;i<arr.length;i++) 
       { 
           System.out.print(arr[i]);         
       } 
 
    } 
    public static void main(String[] args) 
    { 
        int[] arr = {5,1,6,4,2,8,9}; 
        selectSort(arr); 
        System.out.println(); 
        selectSortT(arr); 
 
    } 
} 
 
 |