JAVA冒泡排序原理?谁知道给个例子,谢谢啦

如题所述

本视频通过动画的方式展示冒泡排序的原理。希望对大家理解冒泡排序的原理有所帮助。如果大家觉得有帮助,请点赞,如果关注本号就更好了。如果大家有什么问题,也可以在下面留言。

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-10-16
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<i;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<arry.length;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<arry.length;i++){ //接收数字赋给数组
arry[i]=scan.nextInt();

}

Sort(arry); //调用排列方法

}

}
测试过的,希望有用!本回答被提问者采纳
第2个回答  2011-10-10
//下面是 冒泡排序算法及其例子,写的很详细 希望对你有帮助   
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<s.length-1;i++){
  if(s[i]>s[i+1]){
  int temp;
  temp = s[i];
  s[i] = s[i+1];
  s[i+1] = temp;
  }   
}  
 }
  for(int i=0;i<s.length;i++){
  System.out.println(s[i]);
  }  
 }   
}
第3个回答  2011-10-10
这里有很详细的介绍,也有各种语言的例子
http://baike.baidu.com/view/254413.html?wtp=tt
相似回答