本视频通过动画的方式展示冒泡排序的原理。希望对大家理解冒泡排序的原理有所帮助。如果大家觉得有帮助,请点赞,如果关注本号就更好了。如果大家有什么问题,也可以在下面留言。
import java.util.Scanner;
public class BubbleSort {
// 排序方法(由大到小)
public static void Sort(int arry[]){
for(int i=arry.length-1;i>0;i--)
{
for(int j=0;j {
if(arry[i]>arry[j]) //如果后面的大于前面的 则交换顺序
{
int temp; //相当于装满油的桶,和装满水的桶,互换的时候,需要一个空的桶。temp现在就是那个空桶
temp=arry[i];
arry[i]=arry[j];
arry[j]=temp;
}
}
}
System.out.println("排序结果为:"); //打印排序结果
for(int i=0;i
System.out.print(arry[i]+",");
}
}
public static void main(String args[]){
int[] arry=new int[10];
Scanner scan=new Scanner(System.in); //接收被排列数字
System.out.println("请输入10个数...");
for(int i=0;i
}
Sort(arry); //调用排列方法
}
}
测试过的,希望有用!
//下面是 冒泡排序算法及其例子,写的很详细 希望对你有帮助
public class BubbleSort {
public static void sort(Comparable[] data) {
// 数组长度
int len = data.length;
for (int i = 0; i < len - 1; i++) {
// 临时变量
Comparable temp = null;
// 交换标志,false表示未交换
boolean isExchanged = false;
for (int j = len - 1; j > i; j--) {
// 如果data[j]小于data[j - 1],交换
if (data[j].compareTo(data[j - 1]) < 0) {
temp = data[j];
data[j] = data[j - 1];
data[j - 1] = temp;
// 发生了交换,故将交换标志置为真
isExchanged = true;
}// end if
}// end for
// 本趟排序未发生交换,提前终止算法,提高效率
if (!isExchanged) {
break;
}// end if
}// end for
}// end sort
public static void main(String[] args) {
// 在JDK1.5版本以上,基本数据类型可以自动装箱
// int,double等基本类型的包装类已实现了Comparable接口
Comparable[] c = { 4, 9, 23, 1, 45, 27, 5, 2 };
sort(c);
for (Comparable data : c) {
System.out.println(data);
}
}
}
//简单示例
public class Test_Ordination {
public static void main(String args[]){
int[] s = {23,5,12,59,78,21,100,79,66};
for(int j=1;j<=s.length;j++){
for(int i=0;i
int temp;
temp = s[i];
s[i] = s[i+1];
s[i+1] = temp;
}
}
}
for(int i=0;i
}
}
}
这里有很详细的介绍,也有各种语言的例子
http://baike.baidu.com/view/254413.html?wtp=tt