排序算法 -- 冒泡

排序算法 -- 目录

冒泡排序(Bubble Sort) — O(n²)

冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。

冒泡排序算法的流程如下:

  1. 比较相邻的元素。如果第一个比第二个大,就交换他们两个。
  2. 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
  3. 针对所有的元素重复以上的步骤,除了最后一个。
  4. 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。、

Class : 

package limeMianShi;

import java.util.Arrays;

public class Bubble_Sort {

    public static void main(String[] args) {
        int[] intArr = new int[10];
        for(int i = 0;i < intArr.length;i++){
            intArr[i] = (int) (Math.random()*10);
        }
        System.out.println(Arrays.toString(intArr));
        int times = intArr.length - 1; //总共需要times次才能完成排序
        for(int i = times;i > 0;i--){
            for(int j = 1;j <= i;j++){    //第i次排序需要i次比较相邻的数据大小
                if(intArr[j-1] > intArr[j]){
                    int temp = intArr[j-1];intArr[j-1] = intArr[j];intArr[j] = temp;
                }
            }
        }
        System.out.println(Arrays.toString(intArr));
    }
}

啦啦啦

posted @ 2017-07-05 16:50  limeOracle  阅读(341)  评论(0编辑  收藏  举报