空心三角:
/*
*
* *
* *
* *
*********
*/
public class Stars {
public static void main(String[] args) {
int totalLevel = 20;//层数
for(int i = 1; i <= totalLevel; i++) {//i 表示层数
for(int k = 1; k <= totalLevel - i; k++) {// k 表示输出空格的数量
System.out.print(" ");
//在输出*之前,还要输出对应空格 = 总层数 - 当前层
}
for(int j = 1;j <= 2 * i - 1; j++) {// j 表示输出*的数量
if(j == 1 || j == 2 * i - 1 || i == totalLevel) {
System.out.print("*");
} else { // 其他情况输出空格
System.out.print(" ");
}
}
System.out.println( ); // 每打印完一层的*号后就换行,println本身也会换行
}
//1-4行第一个位置是*,最后一个位置也是* , 第五行全部输出
}
}
冒泡法:
// 将五个无序的数:24,69,80,57,13
// 使用冒泡排序法将其排成一个 从小到大 的有序数列
public class BubbleSort {
public static void main(String[] args) {
int[] arr = {24 , 69 , 80 , 57 , 13};
int temp; //用于辅助变量交换
// 4就是 arr.length - 1
for(int i = 0; i < arr.length - 1; i++) {// 外层循环四次
for(int j = 0; j < arr.length -1 -i; j++) { // 四次比较 -> 三次 -> 二次 -> 一次
// 如果后面的数大于前面的数就进行交换
if(arr[j] > arr[j + 1]) {
temp = arr[j + 1];
arr[j + 1] = arr[j];
arr[j] = temp;
}
}
// 每一轮循环可以确定一个数的位置,比如第一轮排序确定最大的数,第二轮排序
//确定第二大的数,以此类推
System.out.println("\n ===第" + (i + 1) + "轮");
for(int j = 0; j < arr.length ; j++) {
System.out.print(arr[j] + "\t");
}
}
}
}