Java 冒泡排序
初步认识排序
排序是将多个数据依次按指定顺序进行排列的过程。
排序有两种大类:内部排序、外部排序
内部排序:指将需要处理的所有数据都加载到内存中进行排序操作,如交换排序选择排序插入排序
外部排序:当数据量过大,无法完全加载到内存中,需要借助外部储存进行排序,如:合并排序直接合并排序
冒泡排序
冒泡排序: 冒泡排序也是交换排序的一种,简而言之就是从头开始,每次找出 最大值/最小值 然后互换到 后面/前面, 用图形表示就是:

了解了冒泡排序的概念,接下来就是代码的实现
// 要排序的数组
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;
}
}
}

浙公网安备 33010602011771号