美文网首页
JAVA数组冒泡排序

JAVA数组冒泡排序

作者: 夜半蛙声 | 来源:发表于2016-11-11 21:38 被阅读19次

欢迎入群一起探讨技术:307360805

原理:相邻元素两两比较,大的往后放,第一次完毕,最大值出现在最大索引处。同理,依次类推。

publicclassArray {

publicstaticvoidmain(String[]args) {

//定义需要排序的数组

int[]array= {24, 69, 80, 57, 13};

//第一次比较

System.out.println("第一次比较前:");

print(array);

intx= 0;

for(inti=x+ 1;i

if(array[x] >array[i]){

inttemp=array[i];

array[i] =array[x];

array[x] =temp;

}

}

System.out.println("第一次比较后:");

print(array);

//第二次比较

System.out.println("第二次比较前:");

print(array);

x= 1;

for(inti=x+ 1;i

if(array[x] >array[i]){

inttemp=array[i];

array[i] =array[x];

array[x] =temp;

}

}

System.out.println("第二次比较后:");

print(array);

//第三次比较

System.out.println("第三次比较前:");

print(array);

x= 2;

for(inti=x+ 1;i

if(array[x] >array[i]){

inttemp=array[i];

array[i] =array[x];

array[x] =temp;

}

}

System.out.println("第三次比较后:");

print(array);

//第四次比较

System.out.println("第四次比较前:");

print(array);

x= 3;

for(inti=x+ 1;i

if(array[x] >array[i]){

inttemp=array[i];

array[i] =array[x];

array[x] =temp;

}

}

System.out.println("第四次比较后:");

print(array);

}

//打印数组

privatestaticvoidprint(int[]str){

System.out.print("[");

for(inti= 0;i

if(i==str.length-1){

System.out.println(str[i]+"]");

}else{

System.out.print(str[i]+",");

}

}

}

}

优化后:

System.out.println("排序前:");

print(array);

for(inti= 0;i

for(intj=i+ 1;j

if(array[i] >array[j]){

inttemp=array[j];

array[j] =array[i];

array[i] =temp;

}

}

}

System.out.println("排序后:");

print(array);

打印数组方法:

//打印数组

privatestaticvoidprint(int[]str){

System.out.print("[");

for(inti= 0;i

if(i==str.length-1){

System.out.println(str[i]+"]");

}else{

System.out.print(str[i]+",");

}

}

}

相关文章

网友评论

      本文标题:JAVA数组冒泡排序

      本文链接:https://www.haomeiwen.com/subject/cnifpttx.html