杨辉三角Ⅱ 力扣119

一、题目

给定一个非负索引 rowIndex,返回「杨辉三角」的第 rowIndex行。

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

示例 1:

复制代码
输入: rowIndex = 3
输出: [1,3,3,1]

示例 2:

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

示例 3:

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

二、思路

这题跟之前的杨辉三角差不多,依然采用动态规划的思路求解,但是有些小细节要注意。dp数组的行数要是 rowIndex + 1。0-rowindex 总共 rowIndex + 1行!

三、代码

java 复制代码
class Solution {
    public List<Integer> getRow(int rowIndex) {
    
        Integer[][] dp = new Integer[rowIndex + 1][];
        //遍历每一行
        for(int i = 0 ;i <= rowIndex;i++) {
            //初始化当前行,第0行有一个元素,第1行有2个元素
            dp[i] = new Integer[i + 1];
            //每一行的第一个和最后一个元素总是1
            dp[i][0] = dp[i][i] = 1;
            //计算中间元素 j 不能等于i因为不存在dp[i][i]
            for(int j = 1; j < i;j++) {
                dp[i][j] = dp[i - 1][j - 1] + dp[i - 1][j];
            }
        }
        List<Integer> list = Arrays.asList(dp[rowIndex]);
        //返回结果
        return list;
    }
}
相关推荐
身如柳絮随风扬2 小时前
Java中的CAS机制详解
java·开发语言
-dzk-3 小时前
【代码随想录】LC 59.螺旋矩阵 II
c++·线性代数·算法·矩阵·模拟
风筝在晴天搁浅4 小时前
hot100 78.子集
java·算法
Jasmine_llq4 小时前
《P4587 [FJOI2016] 神秘数》
算法·倍增思想·稀疏表(st 表)·前缀和数组(解决静态区间和查询·st表核心实现高效预处理和查询·预处理优化(提前计算所需信息·快速io提升大规模数据读写效率
超级大只老咪4 小时前
快速进制转换
笔记·算法
m0_706653234 小时前
C++编译期数组操作
开发语言·c++·算法
故事和你914 小时前
sdut-Java面向对象-06 继承和多态、抽象类和接口(函数题:10-18题)
java·开发语言·算法·面向对象·基础语法·继承和多态·抽象类和接口
qq_423233905 小时前
C++与Python混合编程实战
开发语言·c++·算法
TracyCoder1235 小时前
LeetCode Hot100(19/100)——206. 反转链表
算法·leetcode
m0_715575345 小时前
分布式任务调度系统
开发语言·c++·算法