1.冒泡排序法原理:
将序列当中的左右元素,依次比较,如果左边的元素大于右边元素则交换位置,保证右边的元素始终大于左边的元素;( 第一轮结束后,序列最后一个元素一定是当前序列的最大值;)对序列当中剩下的n-1个元素再次执行步骤1
。对于长度为n
的序列,一共需要执行n-1轮比较。
![](https://img-blog.csdnimg.cn/20210203165051604.gif)
2.源代码:
import java.util.Arrays;
import java.util.Scanner;
public class array {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
//动态创建数组
System.out.print("请定义数组的长度:");
int[] arr = new int[sc.nextInt()]; //定义数组的长度
System.out.print("请输入数组的值:");
for (int i = 0; i < arr.length; i++) {
arr[i] = sc.nextInt();
}
//冒泡排序法
for (int i = 0; i < arr.length - 1; i++) {
for (int j = 0; j < arr.length - i - 1; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
//以数组形式输出
System.out.println(Arrays.toString(arr));
}
}