一.外部循环:表示我要执行多少轮,如果有n个数据,那么执行n-1轮
二.内部循环:每一轮中我如何比较数据并找到当前的最大值
三.-1:为了防止索引越界
四.-i:提高效率,每一轮执行的次数比上一轮少一次
public class Arr {
public static void main(String[] args) {
/**
冒泡排序
*/
//定义一个数组
int[] arr={45,12,67,222,27,36,2};
//外部循环:表示我要执行多少轮,如果有n个数据,那么执行n-1轮
for (int i = 0 ; i<arr.length-1;i++){
//内循环:每一轮中我如何比较数据并找到当前的最大值
//-1:为了防止索引越界
//-i:提高效率,每一轮执行的次数比上一轮少一次
for (int j = 0 ; j<arr.length-1-i;j++){
if (arr[j]>arr[j+1]){
//两个值的交换
arr[j]=arr[j]+arr[j+1];
arr[j+1]=arr[j]-arr[j+1];
arr[j]=arr[j]-arr[j+1];
}
}
}
//遍历数组
for(int i: arr){
System.out.println(i);
}
}
}
总结:冒泡排序效率非常的高,在数组中也会经常的用到,建议大家多多练习