まず、配列---パスカルの三角形

numRowsの数ヤンホイトライアングルと世代前の非負整数numRowsの数、与えられました。

 

 

パスカルの三角形では、各番号は、その左上と右上の数です。

例:

入力:5
出力

[ [1]、
[1,1]、
[1,2,1]、
[1,3,3,1]、
[1,4,6,4,1]
]

 

考え 

各行は、各行が全て1に初期化することができるエンドツーエンドであり、次いで、修飾された計算

コード:

1  クラスソリューション{
 2  公共3      ベクトル<ベクトル< INT >>生成(INT numRowsの数){
 4。         // パスカルの三角形の各行を格納するための空の配列、定義-小さなアレイを
5。          ベクトル<ベクトル< INT >> RES;
 6つの         // 最初の2行は、デフォルトのアレイである
7。         IF(numRowsの数が<= 2 ){
 8。             ためには、int型 I = 0 ; IはnumRowsの数を<; Iは++ ){
 9                  ベクトル< INT >小(Iは、+ 1。 1。); / /第1のライン1を有し、第二列は、二つの1は
10                  res.push_back(スモール); //は、空の配列RESの最初の2行に入金されるであろう
。11              }
 12で             復帰 RES; // RESはパスカルの三角形を含ん最初の二行
13である         }
 14          {
 15の              RESが=生成(numRows- 。1); // RESアレイnumRowsの数-1フロントロー得る
16              ベクトルを< INT > newsmall(numRowsの数は、1。); // numsRow最初の行を初期化する
 17              @ numRowsの数-1の最初の行からは、第numRowsの数で計算を得るために第numRowsの数、1行配列インデックスRES-2 numRowsの数
18である             ためINT J = 0; J <RES [numRows- 2 ] .size() - 1 ; J ++ ){
 19                  newsmall [J + 1 ] =のRES [numRows- 2 ] [J] + RES [numRows- 2 ] [J + 1 ]。
20              }
 21              res.push_back(newsmall)。
22          }
 23の         リターンRES。
24      }
 25 }。

 

おすすめ

転載: www.cnblogs.com/pacino12134/p/10991329.html
おすすめ