您的位置:首页 > 编程语言 > Java开发

排序算法之冒泡排序(JAVA)

2017-01-15 15:34 190 查看
//冒泡排序算法   平均时间复杂度   O(n*n)   稳定的排序算法

下面的是改进版的冒泡排序算法,使用exchange 标志位进行控制

public class bubbleSort {

public static void bubbleSort(int[] data)

{

    int i = 0;

    int j = 0;

    int tmp = 0;

    int len = 0;////局部变量

    boolean exchange = false;

    if (null == data){

        return;

    }

    len = data.length;   //避免重复调用data.length

  

    for (i = 0; i < len-1; i++)

    {

        exchange = false;

        for (j = 0; j < len - 1 - i; j++) {

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

                tmp = data[j];

                data[j] = data[j+1];

                data[j+1] = tmp;

                exchange = true;

            }

        }

        if (!exchange) {

            break;

        }

    }

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 冒泡排序