集合数据结构 冒泡排序图片 ---有用

 

 

 

 

 

public static void main(String[] args) {
//1. 定义数组, 记录要排序的元素.
int[] arr = {25, 69, 80, 57, 13};

//2. 通过冒泡排序实现: 数组元素的升序排列.
for (int i = 0; i < arr.length - 1; i++) { //外循环, 控制比较的: 轮数.
for (int j = 0; j < arr.length - 1 - i; j++) { //内循环, 控制每轮比较的: 次数.
//谁和谁交换: arr[j] 和 arr[j + 1]比较
if (arr[j] > arr[j + 1]) {
//前边比后边元素大, 就交换位置
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}

//3. 打印结果.
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}

 

 

/*
问题1: 外循环的 -1 是什么意思?
为了提高效率.  因为最后一次是自己和自己比较
问题2: 内循环的 -1 是什么意思?
为了防止出现 ArrayIndexOutOfBoundsException(数组索引越界异常)
问题3: 内循环的 -i 是什么意思?
为了提高效率.
*/

 

 

 

原文地址:https://www.cnblogs.com/shan13936/p/13850774.html