leeCode算法--杨辉三角(I)

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

分析:在「杨辉三角」中,每个数是它左上方和右上方的数的和。这就是我们要实现的规律。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
let generate = numRows => {
let result = []
for (let i = 0;i < numRows;i++) {
let tempArr = []
for (let j = 0; j <= i;j++) {
let sum = 0
if (!result[i - 1]) {
sum = 1
} else {
let left = result[i - 1][j - 1] || 0
let right = result[i - 1][j] || 0
sum = left + sum + right
}
tempArr.push(sum || 1)
}
result.push(tempArr)
}
return result
}

That’s all!

  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2015-2022 Lee
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信