编程语言
首页 > 编程语言> > Java 冒泡排序

Java 冒泡排序

作者:互联网

初步认识排序

排序是将多个数据依次按指定顺序进行排列的过程。

排序有两种大类:内部排序外部排序

冒泡排序

冒泡排序: 冒泡排序也是交换排序的一种,简而言之就是从头开始,每次找出 最大值/最小值 然后互换到 后面/前面, 用图形表示就是:

image-20220423222330059

了解了冒泡排序的概念,接下来就是代码的实现

// 要排序的数组
int bubbleSort[] = {99, 69, 80, 57, 13};
// 定义交换空间,替换值时使用的
int swap;
// 开始循环,外层循环的作用是指定最小值, 和一个比对多少轮
for (int minIndex = 0; minIndex < bubbleSort.length - 1; minIndex++) {  // 五个元素的数组 只需要循环 4 次就能完成排序
    // 指定每次比对 从那里开始,如:
    // 第一轮比对从索引 0 开始
    // 第二轮比对从索引 1 开始 ... 以此类推
    // 因为前面的值已经是比对过的都比后面的值小,所以无需重复比对,浪费资源
    for (int compareIndex = minIndex; compareIndex < bubbleSort.length; compareIndex++) {
        // 判断 最小值 是否比 比对值大
        if (bubbleSort[minIndex] > bubbleSort[compareIndex]) {
            // 如果比比对值大『执行以下代码』,将比对值 和 当前记录的最小值互相替换
            // 如果小,不做任何操作
            // 开始替换,先记录当前记录的最小值到交换空间
            swap = bubbleSort[minIndex];
            // 将当前记录的最小值替换成比对值
            bubbleSort[minIndex] = bubbleSort[compareIndex];
            // 将比对值替换成 之前记录的最小值
            bubbleSort[compareIndex] = swap;
        }
    }
}

标签:minIndex,Java,compareIndex,冒泡排序,bubbleSort,最小值,排序
来源: https://www.cnblogs.com/jwyqn/p/16183939.html