Java 实现冒泡排序:清晰易懂的代码示例
Java 实现冒泡排序:清晰易懂的代码示例
这是一份使用 Java 实现冒泡排序的代码示例,力求代码清晰易懂,注释详细,变量命名规范。
/**
* 冒泡排序
* @param arr 待排序数组
*/
public static void bubbleSort(int[] arr) {
if (arr == null || arr.length < 2) {
return;
}
int n = arr.length;
for (int i = 0; i < n - 1; i++) {
boolean flag = false; // 记录本轮是否交换
for (int j = 0; j < n - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
flag = true;
}
}
// 如果本轮没有交换,则数组已经有序,直接退出循环
if (!flag) {
break;
}
}
}
代码说明:
- 代码使用双重循环实现冒泡排序,每次比较相邻的两个数,如果前面的数大于后面的数,则交换它们。
- 代码中加入了一个优化:如果在某一轮循环中没有发生任何交换,说明数组已经有序,可以直接退出循环,避免不必要的比较。
- 变量命名规范,注释详细,力求代码易读易懂。
希望这份代码能够帮助你理解和实现冒泡排序算法。 😄
原文地址: https://www.cveoy.top/t/topic/mvWM 著作权归作者所有。请勿转载和采集!