什么是冒泡排序?

两两比较,小的上前去,像是水中的气泡冒出来一样,小的先冒出水面。
首先定义一个冒泡排序的方法
代码为;`static void Sort(int[]a) {
for(int i=0;i<a.length-1;i++) {
int min=i;
for(int j=i;j<a.length;j++) {
if(a[min]>a[j]) {
min=j;
}
}
if(min!=0) {
int courrent=a[i];
a[i]=a[min];
a[min]=courrent;
}
}
}`
然后再调用它即可。
把冒泡排序与数组的求平均问题结合起来(用方法实现)
import java.util.Scanner;
public class 冒泡排序 {
public static void main(String[]args) {
System.out.println("请输入数组有几个数");//由自己决定数组有几个元素
Scanner scr=new Scanner(System.in);
int v=scr.nextInt();
int []a=new int[v];
Scanner scanner=new Scanner(System.in);
for( int i = 0;i<a.length;i++){
a[i]= scanner.nextInt();
}
Sort(a);
for(int i=0;i<a.length;i++) {//调用方法
System.out.println(a[i]);
}
System.out.println(average(a));}
static void Sort(int[]a) {
for(int i=0;i<a.length-1;i++) {//定义排序的方法
int min=i;
for(int j=i;j<a.length;j++) {
if(a[min]>a[j]) {
min=j;
}
}
if(min!=0) {
int courrent=a[i];
a[i]=a[min];
a[min]=courrent;
}
}
}
static double average(int[]a){//定义求平均的方法
double aver=0,sum=0;
for( int i=0;i<a.length;i++){
sum+=a[i];
}
aver=1.0*sum/a.length;
return aver;
}
}


879

被折叠的 条评论
为什么被折叠?



