1.冒泡排序的思想
① 从头开始两两比较,把较大的元素与较小的元素进行交换
② 每轮把当前最大的元素存入到数组当前的末尾
2.冒泡排序的实现步骤
① 定义一个外部循环,控制总共要冒几轮(轮数: 数组长度 - 1)
② 定义一个外部循环,控制每轮依次往后比较几个位置.(位置数: 数组长度 - i - 1)
图片展示:
代码展示:
public static void main(String[] args){
int[] arr = {5, 2, 3, 1};//定义一个数组
for(int i = 0; i < arr.length - 1; i++){//定义一个循环控制比较的轮数,轮数从0开始
for(int j = 0; j < arr.length - i - 1){//定义一个循环控制比较的次数,占位
if (arr[j] > arr[j+1]){//判断j当前位置的元素是否大于后一位置的元素
int temp = arr[j + 1];//定义临时变量存j+1
arr[j + 1] = arr[j];//把j的值赋给j+1
arr[j] = temp;//最后把temp中存放的j+1存放到j原本的地址中
}
}
//循环完毕
}
//遍历数组内容输出
for(int i = 0; i < arr.length; i++){
System.out.print(arr[i] + "\t");
}
}
运行截图: