冒泡排序BubbleSort

  • Post author:
  • Post category:其他


冒泡排序 Bubble Sort


算法描述:

  1. 给定的一个数组,相邻的两个元素两两比较,如果前面的数据比后面的数据大,交换位置;
  2. 对每一对数据进行比较,从开始的一对到最后一对,此时最大的元素位于最后一位;
  3. 对前面的(n-1)个元素重复以上步骤;
  4. 重复以上步骤,直到排序完成。


动图演示:

Bubble Sort图示


JAVA代码实现:

public class BubbleSort {
    public static void bubbleSort(int[] arr){
        for(int i=1;i<arr.length;i++){//外层循环控制排序次数
            for(int j=0;j<arr.length-i;j++){//内层循环控制每一趟排序多少次
                if(arr[j]>arr[j+1]){
                    int tmp = arr[j];
                    arr[j]=arr[j+1];
                    arr[j+1]=tmp;
                }
            }
        }

    }

    public static void main(String[] args) {
        int[] a ={8,4,5,9,0,3,2,6,1,7};
        bubbleSort(a);
        for(int i=0;i<a.length;i++){
            System.out.println(a[i]);
        }
    }

}

运行结果是a={0,1,2,3,4,5,6,7,8,9}.

三人行没必有我师焉,欢迎指正。



版权声明:本文为Magic_Chen2012原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。