空心三角:
/* * * * * * * * ********* */ 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"); } } }