冒泡排序

阅读量: 471 编辑

冒泡排序-bubbleSort

冒泡排序(Bubble Sort)也是一种简单直观的排序算法。

一、排序步骤

  • 1、比较相邻的元素:如果第一个比第二个大,就交换他们两个。

  • 2、对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。

  • 3、针对所有的元素重复以上的步骤,除了已完成的(冒泡过的)。直到没有任何一对数字需要比较。

二、Java代码

//冒泡排序:正序排列
public static int[] bubbleSort(int[] array) {
    if (array.length == 0)
        return array;

    for (int i = 0; i < array.length; i++) {
    	//array.length - i - 1,就是除去已完成的
        for (int j = 0; j < array.length - i - 1; j++) {
        
        	//相邻元素比较,如果前1个比后1个大,就交换(冒泡)
            if (array[j] > array[j + 1]) { 
                int tmp = array[j + 1];
                array[j + 1] = array[j];
                array[j] = tmp;
            }
        }
    }
    
    return array;
}

三、代码总结

冒泡排序就是不停的交换,来完成大的数据往后放。

  • 1、双重循环:外循环遍历所有数据,内循环除去(不遍历)已冒泡数据

  • 2、内循环比较相邻数据大小,实现交换即可

苏ICP备13052010号-3
©2022 南京匠成信息科技有限公司