一篇简单的冒泡排序,适合Java入门的人观看,我也是初学者,欢迎大家一起交流。
// TODO Auto-generated method stub
int t;
//定义一个数组并赋值。
int []a = {3,54,5,65,7,1,7,6,765};
for(int i = 0;i<a.length-1;i++) {
//此循环循环i次确定最后i个数是几;
for(int j = 0;j<a.length-1-i;j++) {
//此循环为将循环了i次之后的数组a的值和后面的值两两比较,大的去后面。因为已经循环了i次,最后i个值已经排列好,所以只需比较前a.length-i个数即可。
if( a[j]>a[j+1]) {
//如果a[j]大于a[j]a[j]和a[j+1]交换位置。
t = a[j];
a[j] = a[j+1];
a[j+1] = t;
}
else {
//如果a[j]小于等于a[j],则什么都不做,进入下一次循环。
;
}
}
}
System.out.print("数组a的值从小到大排列为:");
//输出数组a的所有值
for(int c=0;c<a.length-1;c++)
System.out.printf("%d ",a[c]);
System.out.println( );
//数组a的值从大到小排列
for(int i = 0;i<a.length-1;i++) {
for(int j = 0;j<a.length-1-i;j++) {
if( a[j]<a[j+1]) {
t = a[j];
a[j] = a[j+1];
a[j+1] = t;
}
else {
;
}
}
}
System.out.print("数组a的值从大到小排列为:");
for(int c=0;c<a.length-1;c++)
System.out.printf("%d ",a[c]);
}
}