当前位置:首页 > 知识 > 冒泡排序步骤详解

冒泡排序步骤详解

冒泡排序步骤详解

此篇博文只是解释一下Java里面冒泡排序的步骤,为什么这么写,相信大家已经在众多博文中知道了冒泡排序的原理等知识,这里就不介绍了。

//冒泡排序

int[] arr = {1,3,5,7,9,10,8,6,4,2,0};//11位

int temp = 0;//用来中转数值

//从小到大排序

for (int i = 0; iarr.length-1; i++) {

/*

* 为什么是arr.length-1

* 是因为每次循环就是把最大值放到最后一位,

* 第一次就是把第一大的数(10)放到第11位,

* 第二次就是把第二大的数(9)放到第10位,

* ........

* 第十次就是把第十大的数(1)放到了第2位,

* 那么第十一大(0)的数就自然在第1位了,没必要进行下一次了

*/

for (int j = 0; jarr.length-i-1; j++) {

/*

* 为什么是arr.length-i-1,

* arr.length-i:

*因为第i次遍历就会把第i大的数放到倒数第i个位置了,

*如:第一次(i=0)就把10放到倒数第一个(第11)个位置,

*那么我们就没必要去比较这个位置及后面的数了

* -1:

*是为了让j+1不越界

* */

if (arr[j]arr[j+1]){

//相邻比较,如果左边比右边大,交换位置

temp = arr[j];

arr[j] = arr[j+1];

arr[j+1] = temp;

}

}

System.out.println(第i=+i+次之后的数组:+ Arrays.toString(arr));

}

//冒泡排序

int[] arr = {1,3,5,7,9,10,8,6,4,2,0};//11位

int temp = 0;//用来中转数值

//从小到大排序

for (int i = 0; iarr.length-1; i++) {

/*

* 为什么是arr.length-1

* 是因为每次循环就是把最大值放到最后一位,

* 第一次就是把第一大的数(10)放到第11位,

* 第二次就是把第二大的数(9)放到第10位,

* ........

* 第十次就是把第十大的数(1)放到了第2位,

* 那么第十一大(0)的数就自然在第1位了,没必要进行下一次了

*/

for (int j = 0; jarr.length-i-1; j++) {

/*

* 为什么是arr.length-i-1,

* arr.length-i:

*因为第i次遍历就会把第i大的数放到倒数第i个位置了,

*如:第一次(i=0)就把10放到倒数第一个(第11)个位置,

*那么我们就没必要去比较这个位置及后面的数了

* -1:

*是为了让j+1不越界

* */

if (arr[j]arr[j+1]){

//相邻比较,如果左边比右边大,交换位置

temp = arr[j];

arr[j] = arr[j+1];

arr[j+1] = temp;

}

}

System.out.println(第i=+i+次之后的数组:+ Arrays.toString(arr));

}

文章来源于网络,侵权请联系删除

以上就是(冒泡排序步骤详解)全部内容,收藏起来下次访问不迷路!

86%的人还看了:记2020年农历七月十四