java冒泡排序

来源:互联网 发布:建网站主流软件 编辑:程序博客网 时间:2024/06/08 00:20

冒泡排序计较简单 ,一般java初学时就能学到,但鉴于面试时可能会是面试题,所以我就再多费些话。

package tarena.day0501;


import java.util.Arrays;
import java.util.Random;


public class Test1 {
public static void main(String[] args) {
//产生一个乱序数组赋给a
int[]a = suiji();
System.out.println(Arrays.toString(a));
System.out.println("========================");


sort(a);//排序
 
System.out.println("========================");
System.out.println(Arrays.toString(a));
}
//1.返回类型 2.方法名 3.参数列表
static int[] suiji(){
// 5 + [0,6)
int len = 5 + new Random().nextInt(6);
//创建len长度的数组
int []a = new int[len];
//遍历每个位置填入100内随机整数
for (int i = 0; i < a.length; i++) {
a[i] = new Random().nextInt(100);
}
//返回数组
return a;
}
//void 空,表示没有返回值
static void sort(int[] a){
for (int i = 0 ; i < a.length; i++) {
boolean flag = false;//没有交换
//j循环将最小值向前推到i位置
for (int j = a.length-1 ; j > i  ; j--) {
//相邻的值后面的值小,向前交换
if (a[j]<a[j-1]) {
int c = a[j];
a[j]=a[j-1];
a[j-1]=c;
flag = true;//有交换
}
}
if (!flag) break;//排序结束,中断i循环
System.out.println(Arrays.toString(a));
}
}
}

0 0
原创粉丝点击