冒泡排序:轻的上浮,沉的下降
相邻两个元素两两比较,大的元素往后放,第一次完毕,最大值出现在最大索引处
实现代码如下
public static void main(String[] args) {
int[] arr = {33,77,66,11,22,55,44};
//外循环控制轮数,内循环控制每一轮比较的次数
for (int i = 0; i < arr.length - 1; i++) { //外循环只需要比较arr.length-1次即可
for (int j = 0; j < arr.length-1 -i; j++) { //-1是为了防止索引越界,-i是为了提高效率
if (arr[j]>arr[j+1]) {
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+" ");
}
}