题目描述
Given numRows, generate the first numRows of Pascal’s triangle.
For example, given numRows = 5,
Return
[
[1],
[1,1],
[1,2,1],
[1,3,3,1],
[1,4,6,4,1]
]
大白话
输入行数n,输出n行的杨辉三角
原题目链接
思路
找规律:
1. 三角的外围都是1,即每行的第一个和最后一个元素都是1
2. 除1外的元素,等于它正上方的元素+正上方左边一个元素之和
用矩阵表示即 arr[i][j]=arr[i-1][j-1]+arr[i-1][j];
AC代码
var generate = function(numRows) {
var arr=[];
for(var i=0;i<numRows;i++){
arr[i]=[];//第i行
arr[i][0]=1;//第i行的第0个元素
arr[i][i]=1;//第i行的最后一个元素
for(var j=1;j<i;j++){
arr[i][j]=arr[i-1][j-1]+arr[i-1][j];
}
}
return arr;
};