1、冒泡排序
每次比较相邻两数;
小的交换到前面;
每轮结束后最大的数交换到最后
用二重循环实现冒泡排序
5个数字如何存放
数组,数组.length = 5
控制比较多少轮
外层循环,循环变量 i
控制每轮比较多少次内层循环,循环变量 j
交换数据
冒泡排序小结
N 个数字来排队
两两相比小靠前
外层循环 N-1
内层循环 N-1-I
Scanner input = new Scanner(System.in); int c = 0; System.out.println("请输入5名同学的成绩:"); int a[] = new int[5]; for(int i = 0;i<a.length;i++) { System.out.print("请输入第"+(i+1)+"名同学的成绩:"); a[i] = input.nextInt(); } for(int i = 0;i<a.length;i++) { for(int j = 0;j<a.length-1;j++) { if(a[j]<a[j+1]) { c = a[j]; a[j] = a[j+1]; a[j+1] = c; } } } System.out.print("5名同学的成绩降序排列:"); for(int i = 0;i<a.length;i++) { System.out.print("\t"+a[i]+"\t"); }
2、Arrays类
方法名称 | 说明 |
---|---|
boolean equals(array1,array2) | 比较array1和array2两个数组是否相等 |
sort(array) | 对数组array的元素进行升序排列 |
String toString(array) | 将一个数组array转换成一个字符串 |
void fill(array,val) | 把数组array所有元素都赋值为val |
copyOf(array,length) | 把数组array复制成一个长度为length的新数组,返回类型与复制的数组一致 |
int binarySearch(array, val) | 查询元素值val在数组array中的下标(要求数组中元素已经按升序排列) |
3、二维数组
二维数组定义
写法一
int[][] scores=new int[][]{ { 90, 85, 92, 78, 54 }, { 76, 63,80 }, { 87 }};
写法二
int scores[][] = {{ 90, 85, 92, 78, 54 }, { 76, 63,80 }, { 87 } };