冒泡排序
2025/7/23...小于 1 分钟
冒泡排序
逐个两两比较,前面比后面大交换,直到n位置是最大值 重新逐个两两比较,前面比后面大交换,直到n-1位置是最大值 。。。 重新逐个两两比较,前面比后面大交换,直到2位置是最大值 只剩一个只自然最大,不用交换
package learn.note.algorithm.sort.three;
import java.util.Arrays;
/**
* @author Wang WenLei
* @date 2025/7/23 13:37
* @since 1.0
*/
public class BubbleSort {
public static void main(String[] args) {
int [] data = new int[]{1,7,3,11,8,5,10,2,4,9,6};
bubbleSort(data);
Arrays.stream(data).forEach(System.out::println);
}
private static void bubbleSort(int [] data) {
for (int i = 0; i < data.length; i++) {
for (int j = 0 ; j < data.length - 1 - i; j++) {
if (data[j] > data[j + 1]) {
swap(data,j,j + 1);
}
}
}
}
private static void swap(int [] data,int i,int j) {
int temp = data[i];
data[i] = data[j];
data[j] = temp;
}
}