冒泡排序原理
1):冒泡排序原理:相邻元素两两比较,大的往后走,第一次完毕后,最大值就在最大索引处。
2):冒泡排序代码
public static void bubbleSort(int[] arr) {
// 外循环控制次数
for (int x = 0; x < arr.length - 1; x++) {
// 内循环控制每一次的比较过程
/*
* 第一次,所有元素都参与比较,也就是0个元素不参与。
* 第二次,有1个元素不用参与。
* 第三次,有2个元素不用参与。 ...
*/
// -1是为了防止索引越界
// -x是为了减少比较的次数
for (int y = 0; y < arr.length - 1 - x; y++) {
if (arr[y] > arr[y + 1]) {
// 数据交换
int temp = arr[y];
arr[y] = arr[y + 1];
arr[y + 1] = temp;
}
}
}
} |
|