手撕
阿新 • • 發佈:2020-08-24
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();
}
}
}