leetcode——杨辉三角(简单移动的解法)

给定一个非负整数 numRows 生成「杨辉三角」的前 numRows 行。

在「杨辉三角」中,每个数是它左上方和右上方的数的和。

示例 1:

复制代码
输入: numRows = 5
输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]

示例 2:

复制代码
输入: numRows = 1
输出: [[1]]

解题方法:(简单的数学规律)

1.杨辉三角中每个数的左上方的数与其右上方的数相加等于该数,所以我们需要两层循环来解题。

2.首先第一层循环是我们行的遍历,然后第二层循环是我们的列的遍历。

3.记得每一次退出第二层循环的时候我们需要在该行的末尾加上1

java 复制代码
class Solution {
    public List<List<Integer>> generate(int numRows) {
        List<List<Integer>> c = new ArrayList<>(numRows);
        c.add(List.of(1));
        for (int i = 1; i < numRows; i++) {
            List<Integer> row = new ArrayList<>(i + 1);
            row.add(1);
            for (int j = 1; j < i; j++) {
                row.add(c.get(i - 1).get(j - 1) + c.get(i - 1).get(j));
            }
            row.add(1);
            c.add(row);
        }
        return c;
    }
}
相关推荐
LDG_AGI3 分钟前
【推荐系统】深度学习训练框架(九):推荐系统与LLM在Dataset、Tokenizer阶段的异同
人工智能·深度学习·算法·机器学习·推荐算法
爪哇部落算法小助手7 分钟前
每日两题day61
数据结构·c++·算法
Swift社区7 分钟前
LeetCode 439 - 三元表达式解析器
算法·leetcode·ssh
小殊小殊8 分钟前
重磅!DeepSeek发布V3.2系列模型!
论文阅读·人工智能·算法
裤裤兔9 分钟前
利用matlab进行FDR校正的实现方式
数据结构·算法·matlab·多重比较矫正·校正·fdr
野蛮人6号9 分钟前
力扣热题100道之31下一个排列
算法·leetcode·职场和发展
子一!!10 分钟前
哈希桶,元素插入逻辑实现
算法·哈希算法
敲代码的嘎仔10 分钟前
LeetCode面试HOT100——160. 相交链表
java·学习·算法·leetcode·链表·面试·职场和发展
吃着火锅x唱着歌11 分钟前
LeetCode 454.四数相加II
算法·leetcode·职场和发展
敲代码的嘎仔12 分钟前
LeetCode面试HOT100—— 206. 反转链表
java·数据结构·学习·算法·leetcode·链表·面试