Java冒泡排序
第一层循环是遍历的次数
第二层循环是比较次数
判断两个数字之间的大小,如果第一个比第二个大则互换位置。
代码如下:
import java.util.*;
public class BubbleSort{
public static void main(String[] args) {
Scanner reder=new Scanner(System.in); //创建Scannner对象
int[] arr=new int[10]; //创建数组
for(int i=0;i<arr.length;i++){
System.out.println("请输入第"+(i+1)+"个元素:"); //用户输入数字
arr[i]=reder.nextInt(); //循环接受用户输入
}
sort(arr); //调用排序方法
System.out.println("排序后的结果:");
for(int i=0;i<arr.length;i++){ //遍历数组元素
System.out.println(arr[i]);
}
}
public static void sort(int[] arr){
int temp;
for(int i=0;i<arr.length;i++){ //遍历次数
for(int j=0;j<arr.length-i-1;j++){ //比较次数
if(arr[j]>arr[j+1]){ //判断第一个元素比第二个元素大,则互换
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
}
}
运行结果:
请输入第1个元素:
1
请输入第2个元素:
8
请输入第3个元素:
5
请输入第4个元素:
1
请输入第5个元素:
6
请输入第6个元素:
1
请输入第7个元素:
6
请输入第8个元素:
6
请输入第9个元素:
6
请输入第10个元素:
6
排序后的结果:
1
1
1
5
6
6
6
6
6
8