public class BubbleSortExample {
public static void main(String[] args) {
int[] array = {64, 34, 25, 12, 22, 11, 90};
bubbleSort(array);
System.out.println("Sorted array:");
printArray(array);
}
// 冒泡排序算法实现
static void bubbleSort(int[] arr) {
int n = arr.length;
// 外层循环控制遍历次数
for (int i = 0; i < n-1; i++) {
// 内层循环进行相邻元素的比较和交换
for (int j = 0; j < n-i-1; j++) {
if (arr[j] > arr[j+1]) {
// 交换 arr[j] 和 arr[j+1]
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
// 打印数组方法
static void printArray(int[] arr) {
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
System.out.println();
}
}
bubbleSort 方法:这是冒泡排序的核心逻辑。它通过多次遍历数组,每次将相邻的两个元素进行比较,如果前一个元素大于后一个元素,则交换它们。这样每一轮遍历后,最大的元素会被移动到数组的末尾。
外层循环:控制遍历的轮数,总共需要 n-1 轮(n 是数组长度),因为最后一轮时只剩下一个元素不需要比较。
内层循环:负责在每一轮中对相邻元素进行比较和交换。随着外层循环的推进,已经排好序的部分会逐渐增大,因此内层循环的范围也会逐渐缩小。
printArray 方法:用于打印排序后的数组,方便查看结果。
主程序:创建一个待排序的数组,并调用 bubbleSort 方法对其进行排序,最后输出排序后的结果。
下一篇:java post
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站