public static void main(String[] args) {
int x[]={10,3,8,2,5,6};
for(int i=0;i<x.length;i++){
for(int j=0;j<x.length;j++){
int temp=0;
if(x[i]<x[j]){
temp=x[j];
x[j]=x[i];
x[i]=temp;
}
}
}
for(int j=0;j<x.length;j++){
System.out.println(x[j]);
}
}
小弟做冒泡排序的时候 瞎整。。但也能整出来 。。很不理解啊   求大神详细解释一下

解决方案 »

  1.   

    可以只用一个循环的   而且你的这个跟本不叫冒泡排序public static void main(String[] args) {
        int x[]={10,3,8,2,5,6};
        int temp=0;
        for(int j=0;j<x.length-1;j++){
             for(int i=0;i<x.length-1;i++){
                 if(x[i]<x[i+1]){
                     temp=x[i];
                     x[i]=x[i+1];
                     x[i+1]=temp;
                 }
             }
        }
        for(int j=0;j<x.length;j++){
             System.out.println(x[j]);
        }
    }
    因为冒牌排序一重循环是控制未比较的数组中的值
    另一重循环是用对数组中值进行排序