一、思想
假设数组为【8,4,7,2,1】
冒泡冒泡,顾名思义,就是把数字看成泡泡冒出去,相邻的数字相比较,如果左边比右边大则交换,然后向后比较。
第一轮:【4,8,7,2,1】->【4,7,8,2,1】->【4,7,2,8,1】->【4,7,2,1,8】结束
直至经过数组长度 - 1轮就结束排序,并且每一轮都会将位置不正确但数字最大的数冒到后面,这样后一轮排序时就可以不用考虑那些位置
二、代码
@Test
public void test1() {
int[] arr = new int[]{3,6,1,8,2};
for(int i = 0; i < arr.length - 1; i++) {
for(int j = 0; j < arr.length - 1 - i; j++) {
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] + " ");
}
}