java對角線數列的算法

  1. public class TriangularArray {
  2.     /**
  3.      * @param args
  4.      */
  5.     public static void main(String[] args) {
  6.         // TODO Auto-generated method stub
  7.         int NMAX = 7;
  8.         int[][] triangularArray = new int[NMAX][];
  9.         for (int i = 0; i < NMAX; i++) {
  10.             for (int j = 0; j <= i + 1; j++) {
  11.                 triangularArray[i] = new int[j];
  12.             }
  13.         }
  14.         //兩側數據爲1,中間數據爲[i - 1][j - 1] + [i - 1][j]
  15.         for (int i = 0; i < triangularArray.length; i++) {
  16.             for (int j = 0; j < triangularArray[i].length; j++) {
  17.                 if (j == 0 || i == j)
  18.                     triangularArray[i][j] = 1;
  19.                 else
  20.                     triangularArray[i][j] = triangularArray[i - 1][j - 1]
  21.                             + triangularArray[i - 1][j];
  22.             }
  23.         }
  24.         for (int[] row : triangularArray) {
  25.             for (int num : row) {
  26.                 System.out.printf("%4d", num);
  27.             }
  28.             System.out.println();
  29.         }
  30.     }
  31. }

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章