打印杨辉三角

  杨辉三角形,又称贾宪三角形,帕斯卡三角形,是二项式系数在三角形中的一种几何排列。

  特点:

    1、第一行有 1 个元素,第 n 行有 n 个元素
    2、每一行的第一个元素和最后一个元素都是 1
    3、从第三行开始,除去首尾位置的元素,每个元素等于上方元素与左上方元素之和

  

代码:

 1 package com.demo;
 2 
 3 /*
 4  * 打印杨辉三角(10行)
 5  * 使用二维数组
 6  */
 7 
 8 public class YangHuiTriangle {
 9     public static void main(String[] args) {
10         // 1.定义二维数组
11         // 显示10行
12         int[][] yangHui = new int[10][];
13 
14         // 2.给二维数组赋值
15         for (int i = 0; i < yangHui.length; i++) {
16             // 第几行,就有几个元素
17             yangHui[i] = new int[i + 1];
18             // 给每行的首尾元素赋值,都等于1
19             yangHui[i][0] = 1;
20             yangHui[i][i] = 1;
21             // 从第三行开始,给剩下的元素赋值
22             if (i >= 2) {
23                 for (int j = 1; j < yangHui[i].length - 1; j++) {
24                     yangHui[i][j] = yangHui[i - 1][j] + yangHui[i - 1][j - 1];
25                 }
26             }
27         }
28 
29         // 3.遍历二维数组
30         for (int i = 0; i < yangHui.length; i++) {
31             for (int j = 0; j < yangHui[i].length; j++) {
32                 System.out.print(yangHui[i][j] + "  ");
33             }
34             System.out.println();
35         }
36     }
37 }

输出结果:

1    
1    1    
1    2    1    
1    3    3    1    
1    4    6    4    1    
1    5    10    10    5    1    
1    6    15    20    15    6    1    
1    7    21    35    35    21    7    1    
1    8    28    56    70    56    28    8    1    
1    9    36    84    126    126    84    36    9    1    

备注:没有使用左右对称的打印方式

原文地址:https://www.cnblogs.com/stefaniee/p/10919282.html