冒泡排序
冒泡排序逻辑:
每次比较相邻两数,小的交换到前面,每轮结束后最大的数交换到最后。
public class Aa {
public static void main(String[] args) {
int[] nums = {87, 34, 667, 46, 32, 76, 234};
for (int i = 0; i < nums.length; i++) {
for (int j = i; j < nums.length; j++) {
if (nums[i] > nums[j]) {
int temp = nums[i];
nums[i] = nums[j];
nums[j] = temp;
}
}
}
System.out.println(Arrays.toString(nums));
}
}
冒泡排序速记口诀:
N个数字来排队;
两两相比小靠前;
外层循环N-1;
内层循环N-1-i;
使用Arrays为数组排序
二维数组
二维数组实际上是一个以一堆数组作为元素的一堆数组
(实际使用时注意格式及赋值)
练习:显示班级学生总成绩:
public class Test1 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int[][] a=new int[3][5];
for (int i = 0; i < a.length; i++) {
System.out.println("******第"+(i+1)+"班******");
int sum=0;
for (int j = 0; j < a[i].length; j++) {
System.out.println("请输入第"+(j+1)+"个学生的成绩:");
a[i][j]=sc.nextInt();
sum+=a[i][j];
}
System.out.println("总成绩为"+sum);
}
System.out.println("******成绩总览******");
for (int i = 0; i <a.length; i++) {
int sum=0;
for (int j = 0; j < a[i].length; j++) {
sum+=a[i][j];
}System.out.println("第"+(i+1)+"个班的成绩为:"+sum);
}
}
}