软件测试学习教程—Java实现冒泡排序

271 阅读1分钟

  Java实现冒泡排序

  (1)原理:

  1、从第一个数据开始,与第二个数据相比较,如果第二个数据小于第一个

  数据,则交换两个数据的位置。

  2、指针由第一个数据移向第二个数据,第二个数据与第三个数据相比较,

  如果第三个数据小于第二个数据,则交换两个数据的位置。

  3、依此类推,完成第一轮排序。第一轮排序结束后,最大的元素被移到了

  最右面。

  4、依照上面的过程进行第二轮排序,将第二大的排在倒数第二的位置。

  5、重复上述过程,没排完一轮,比较次数就减少一次。

  6、N个数据排序,需要进行N-1轮排序;第i轮排序需要的比较次数为N-i次。

  (2)编码思路:

  需要两层循环,第一层循环i表示排序轮数,第二层循环j表示比较的次数。

  (3)代码实现:

  /**

  *冒泡排序

  */

  public class BobSort{

  private int[]array;

  private int length;

  /**

  *构造函数

  */

  public BobSort(int[]array){

  this.array=array;

  this.length=array.length;

  }

  /**

  *打印数组中数据

  */

  public void display(){

  for(int i:array){

  System.out.print(i+"");

  }

  System.out.println();

  }

  /**

  *冒泡排序

  */

  public void bobSort(){

  for(int i=0;i<length-1;i++){//排序轮数

  for(int j=0;j<length-1-i;j++){//比较次数

  if(array[j]>array[j+1]){

  int temp=array[j+1];

  array[j+1]=array[j];

  array[j]=temp;

  }

  }

  }

  }

  /**

  *测试方法

  */

  public static void main(String[]args){

  int[]array={3,1,2,6,10};

  BobSort bobSort=new BobSort(array);

  System.out.println("排序前的数据为:");

  bobSort.display();

  bobSort.bobSort();

  System.out.println("排序后的数据为:");

  bobSort.display();

  }

  }

  运行结果为:

  排序前的数据为:

  3 1 2 6 10

  排序后的数据为:

  1 2 3 6 10

  最后:

  关注回复“软件测试”即可获取软件测试全套视频教程!