118. Pascal's Triangle(JS)

语言:Javascript
内容:Given a non-negative integer numRows, generate the first numRows of Pascal's triangle.
In Pascal's triangle, each number is the sum of the two numbers directly above it.
方法:每一个结果,前后固定为1,中间为上一个数组的两两相加
例如:arr[2] = [1,1] arr[3] = [1,2,1] arr[4]=[1,3,3,1]


Pascal's Triangle.png
/*
   @param {number} numRows
   @return {number[][]}
*/
 var generate = function(numRows) {
    if(numRows === '') return '';
    if(numRows === 0) return [];
    if(numRows === 1) return [[1]];
    if(numRows === 2) return [[1],[1,1]];
    var res = [[1],[1,1]];
    var temp = [1,1];
    for(var i=3;i<=numRows;i++){
        var arr = temp.slice();
        for(var j=0;j<temp.length-1;j++){
            var num = temp[j]+temp[j+1];
            arr[j+1] = num;
        }
        arr.push(1);
        res.push(arr);
        temp = arr;
    }
    return res;
};
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容