java语言实现冒泡排序

Posted 职坐标在线

tags:

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

冒泡排序

冒泡排序的效率很低,但是算法实现起来很简单,因此很适合作为研究排序的入门算法。

 

基本思想

对当前还未排好序的范围内的全部数,自上而下对相邻的俩个数依次进行比较和调整,让较大的数下沉,较小的数往上冒。即:每当俩相邻的数比较后发现他们的排序与排序的要求相反时,就将他们交换。每次遍历都可确定一个最大值放到待排数组的末尾,下次遍历,对该最大值以及它之后的元素不再排序(已经排好)。

java 实现

public class Sort{

 

  private int [] array;

 

  public Sort(int [] array){

     this.array = array;

  }

 

  //按顺序打印数组中的元素

  public void display(){

     for(int i=0;i<array.length;i++){

         System.out.print(array[i]+"\t");

     }

     System.out.println();

  }

 

  //冒泡排序

  public void bubbleSort(){

     int temp;

     int len = array.length;

   

     for(int i=0;i<len-1;i++){  //外层循环:每循环一次就确定了一个相对最大元素

         for(int j=1;j<len-i;j++){  //内层循环:有i个元素已经排好,根据i确定本次的比较次数

            if(array[j-1]>array[j]){  //如果前一位大于后一位,交换位置

                temp = array[j-1];

                array[j-1] = array[j];

                array[j] = temp;

            }

         }

         System.out.print("第"+(i+1)+"轮排序结果:");

         display();

     }

  }

 

}

 

public static void main(String[] args) {

     int [] a = {1,5,4,11,2,20,18};

     Sort sort = new Sort(a);

     System.out.print("未排序时的结果:");

     sort.display();

     sort.bubbleSort();

   

   }

打印结果:

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注编程语言JAVA频道!

以上是关于java语言实现冒泡排序的主要内容,如果未能解决你的问题,请参考以下文章

用Java实现冒泡排序和Arrays排序

各编程语言冒泡排序的实现

Go语言实现冒泡排序选择排序快速排序及插入排序的方法

排序算法之冒泡选择插入排序(Java)

排序算法之冒泡选择插入排序(Java)

用Java编程语言对一个无序整形数组进行排序(冒泡排序,选择排序,插入排序)