https://leetcode.cn/problems/pascals-triangle/description/?envType=study-plan-v2&envId=top-100-liked
118. 杨辉三角
已解答
简单
相关标签
相关企业
给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。在「杨辉三角」中,每个数是它左上方和右上方的数的和。
杨辉三角的构建规则:
第一行是 [1]。
第二行是 [1, 1]。
从第三行开始,每一行的第一个和最后一个元素都是 1。
其他元素等于上一行中相邻两个元素之和,即第 i 行的第 j 个元素为:triangle[i-1][j-1] + triangle[i-1][j]。
就看出这个规则就能开始写代码了
class Solution {public List<List<Integer>> generate(int numRows) {List<List<Integer>> res = new ArrayList<List<Integer>>();for(int i=0;i<numRows;i++){List<Integer> row = new ArrayList<Integer>();for(int j=0;j<=i;j++){if(j==0||j==i){row.add(1);} else{row.add(res.get(i-1).get(j-1)+res.get(i-1).get(j));}}res.add(row);}return res;}
}