118. 杨辉三角

118. 杨辉三角

给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。
在杨辉三角中,每个数是它左上方和右上方的数的和。

示例:

输入: 5
输出:
[
     [1],
    [1,1],
   [1,2,1],
  [1,3,3,1],
 [1,4,6,4,1]
]

代码如下:

class Solution {
    /**
     * @param Integer $numRows
     * @return Integer[][]
     */
    function generate($numRows) {
        $triangle = [];
        for ($i = 0; $i < $numRows; $i++) {
            $tmp = [1];
            for ($j = 0; $j < $i; $j++) {
                if ($j == $i - 1) {
                    $tmp[] = $triangle[$i - 1][$j];
                } else {
                    $tmp[] = $triangle[$i - 1][$j] + $triangle[$i - 1][$j + 1];
                }
            }
            $triangle[] = $tmp;
        }
        return $triangle;
    }
}

本文链接:https://itarvin.com/detail-206.aspx

登录或者注册以便发表评论

登录

注册