パスカルの三角形、パスカルの三角形のk行目のアルゴリズムの練習

1.パスカルの三角形

非負の整数を考えると  numRowsの数、のパスカルの三角形前に生成  numRowsの数の ライン。

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

例:
入力:5 
出力:
[ 
     [ 1 ]、
    [ 11 ]、
   [ 121 ]、
  [ 1331 ]、
 [ 14641 ] 
]

ジャワ

クラスのソリューション{
     公共リスト<リスト<Integer型>>生成(int型numRowsの数){ 
        リスト <リスト<Integer型>> RS = 新しいのArrayList <リスト<Integer型>> (); 
        一覧 <整数>前= nullを以下のためにint型 I = 1; I <= numRowsの数、iは++ ){ 
            リスト <整数> TMP = 新規のArrayList <> ();
            INT J = 0; J <I、J ++ ){
                 場合(j == 0 || J == I-1 ){ 
                    tmp.add( 1 )。{ 
                    tmp.add(prior.get(J -1)+ prior.get(J))。
                } 
            } 
            (TMP)rs.add。 = TMP; 
        } 
        戻りRS。
    } 
}

PHP

クラスソリューション{ 

    / * * 
     * @param整数$ numRowsの数
     整数@return * [] [] 
     * / 
    関数(生成$ numRowsの数を){
         $ RS = [];
        $ I ; = 1 $ iが <= $ numRowsの数 ; $ iは ++ ){
             $ TMP = [];
            $ jを = 0; $ jの < $ I ; $のJ ++ ){
                 場合$ jは == 0 ||の$ jの == $ iは-1 ){
                     array_push$ TMP、1 )。
                } {
                     array_push$ TMP$ RS [ $ I -2] [ $ jを -1] + $ RS [ $ I -2] [ $のJ ])。
                } 
            } 
            array_push$ RS$ TMP )。
        } 
        を返す $ RSを
    } 
}

2.パスカルの三角形が最初である  k個の 

非負の屈折率の所定の  K、  K  ≤33であるが、第一パスカルの三角形に戻る  k個の 行。

例:
入力: 3 
出力:[ 1,3,3,1]

ダイレクト式の組み合わせを使用します

C(n,i) = n!/(i!*(n-i)!)

(I + 1)の用語は、項目の倍数であるI =(NI)/(I + 1)。

ジャワ

クラスのソリューション{
     公共の一覧<整数>のgetRow(int型rowIndexプロパティ){ 
        一覧 <整数> RS = 新しい ArrayListを<> ();
           M = 1 以下のためにint型 I 0 =; I <= rowIndexに、私は++ ){ 
            rs.add((INT )M)。
            M = M×(rowIndexプロパティ-I)/(I + 1 )。
        } 
        戻りRS。
    } 
}

注意:

  mは、オーバーフローが発生し、int型することができません

 

PHP

クラスソリューション{ 

    / * * 
     * @param整数$ rowIndexに
     整数@return * [] 
     * / 
    関数のgetRow($ rowIndexプロパティ){
         $ M = 1 $ RS = [];
        $ I ; = 0 $ I <= $ rowIndexに私は$ ++ ){
             array_push$ RS、(INT)の$ M )。
            $ M = $ M *($ rowIndexプロパティ - $ I)/($ I +1 )。 
        }
        リターン $ rsを
    } 
}

 

おすすめ

転載: www.cnblogs.com/baby123/p/10954695.html