1. 原理:重复遍历数组,相邻元素两两对比,顺序错误则交换位置。
2. 规则:每一轮排序都会把当前最大值排到末尾,总共循环长度-1轮。
3. 特点:属于稳定排序,占用内存少,算法逻辑简单易懂。
4. 复杂度:时间复杂度O(n²),空间复杂度 O(1)。
5. 适用:适合少量数据排序,是Java入门经典排序算法。
public class BubbleSort {
public static void main(String[] args) {
int[] arr = {5,2,9,1,6,3};
// 外层循环:控制排序轮数
for(int i = 0; i < arr.length - 1; i++){
// 内层循环:相邻元素比较
for(int j = 0; j < arr.length - 1 - i; j++){
if(arr[j] > arr[j+1]){
// 交换两个元素
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
// 遍历输出排序后的数组
for(int num : arr){
System.out.print(num + " ");
}
}
}