当前位置: 代码迷 >> Java相关 >> 大家来找茬
  详细解决方案

大家来找茬

热度:151   发布时间:2009-10-20 21:03:39.0
大家来找茬
程序代码:
public static void setPai(int a[]) {
     int m,k,j;
     for(int i=0;i<a.length;i++){
         m=a[i];k=0;                    //定义m=a[i],即未完成排序的序列的第一个数
         for( j=i+1;j<a.length;j++){
            if(a[j]<m){
               m=a[j];            //将a[j]的值放入m中
               k=1;   
                }
            }
        if(k){                //如果k=1,即if里的条件为真,执行下面语句   反之,直接跳过
            a[j]=a[i];        //实现a[j]与a[i]互换
            a[i]=m;        
      }
        
   }
}




程序代码:
public static void setPai(int a[]){
    for(int i=0;i<a.length;i++){
    int k=i;
    for(int j=k+1;j<a.length;j++){
        if(a[j]<a[k]){
            k=j;
    }
}
        if(k !=i) {
            int temp =a[i];
            a[i] = a[k];
            a[k] = temp;
        }
    }
}
这两个方法的代码`
我的意思 是实现数组排序

下面的代码是教程里的代码
上面的是我编写的`
为什么我的代码不能达到目的`
请能明察秋毫的同学指点下`
----------------解决方案--------------------------------------------------------
好像发错了!!!
----------------解决方案--------------------------------------------------------
数组有专门的排序方法
  Arrays.sort(数组名);
----------------解决方案--------------------------------------------------------
好像是第二个的for语句括号放错了。不知道对不对??
----------------解决方案--------------------------------------------------------
  相关解决方案