冒泡排序是最基础的排序法之一,冒泡排序法的运行机制是通过循环遍历元素并调整相邻元素顺序来实现的一种简单排序方法。
我们通过定义一个数组来演示一下冒泡排序:
public class ArraySort{
public static void main(String[] args){
//我们接下来通过冒泡排序实现该数组的升序排列
int [] array = {5,1,17,6,12};
for(int loopTime = 1 ; loopTime < array.length ; loopTime++){
/*这里的外部循环用来控制要进行几次比较
比如数组中有五个元素,循环第一次就可以把最大的数组元素放置在数组的最后一位
循环第二次就可以把第二大的数组元素放置在数组的倒数第二位
以此类推,只需要循环数组长度-1次即可
这里我们定义的循环次数loopTime有实际意义,所以是从1开始的
所以条件判断时循环次数小于数组长度即可。*/
for(int i = 0 ; i < array.length-loopTime ; i++){
//这里array.length-loopTime可以节省循环次数,外部循环每循环一次就放置好了数组末尾的一个元素,不需要再对数组末尾的元素进行比较。
int currentData = array[i];
int nextData = array[i+1];
if(currentData > nextData){
//如过当前下标元素大于下一个下标的元素,则两个元素互换位置
array[i] = nextData;
array[i+1] = currentData;
}
}
}
for(int x : array){
System.out.println(x);
}
}
}