1. 程式人生 > 實用技巧 >手撕

手撕

1、非遞迴列印楊輝三角

package test1;

public class yanghuisanjiao {

    /**
     * 列印楊輝三角
     * 
     * @author 時光·漫步
     *
     */

    public static void main(String[] args) {
        // 定義陣列的長度
        int length = 5;
        int arr[][] = new int[length][];

        // 遍歷二維陣列
        for (int i = 0; i < arr.length; i++) {
            
// 確定二維陣列元素的大小 arr[i] = new int[i + 1]; // 列印空格 for (int j = 0; j < arr.length - i - 1; j++) { System.out.print(" "); } // 遍歷一維陣列 for (int j = 0; j < arr[i].length; j++) { if (j == 0 || arr[i].length - 1
== j) { // 三角形兩腰全為 1 arr[i][j] = 1; } else { // 其他元素等於兩肩數字之和 arr[i][j] = arr[i - 1][j] + arr[i - 1][j - 1]; } System.out.printf("%4d", arr[i][j]); } System.
out.println(); } } }