经典算法--冒泡排序(Java)

Posted jhonsonarek

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了经典算法--冒泡排序(Java)相关的知识,希望对你有一定的参考价值。

原理:将相邻元素的较大值赋给右边

思路:① 1.将集合或数组内的第一个元素与第二个元素进行比较,较大值赋给右边;

    2.将第二个元素与第三个元素进行比较,较大值赋给右边;

    .......

    (N-1).将第N-1个元素与第N个元素进行比较,较大值赋给右边;

    自此,得到集合中元素最大值并将其赋给元素N;

   ② 重复操作① 得到元素N-1的新值;得到元素N-2的新值;

    ......

    得到元素2的值,得到元素1的值

实例:

为 Arr[5] = {3,5,2,8,1}排序:

第一趟排序:

3,5,2,8,1;

3,2,5,8,1;

3,2,5,8,1;

3,2,5,1,8;

第二趟排序:

2,3,5,1,8;

2,3,5,1,8;

2,3,1,5,8;

第三趟排序:

2,3,1,5,8;

2,1,3,5,8;

第四趟排序:

1,2,3,5,8;

 

由此可见:N个数字要排序完成,总共进行N-1趟排序,每i趟的排序次数为(N-i)次,所以可以用双重循环语句,外层控制循环多少趟,内层控制每一趟的循环次数,即:

for(i = 0; i<arr.length-1;i++){//外层控制进行多少趟排序

  for(j = 0; j<arr.length-1-i;j++){//内层控制每趟排序进行多少次相邻元素大小的判断

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

      temp = arr[j];

      arr[j] = arr[j+1];

      arr[j+1] = temp;

    }

  }

}

以上是关于经典算法--冒泡排序(Java)的主要内容,如果未能解决你的问题,请参考以下文章

java 冒泡排序 经典算法题

java经典算法之冒泡排序

JAVA实现经典排序算法(冒泡排序选择排序插入排序希尔排序堆排序归并排序快速排序)

Java中的经典算法之冒泡排序(Bubble Sort)

十大经典排序算法总结(冒泡排序)

java-数组排序之冒泡排序(经典排序)