杨辉三角 II

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

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

示例 1:

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

示例 2:

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

示例 3:

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

提示:

  • 0 <= rowIndex <= 33

进阶:

你可以优化你的算法到 O (rowIndex) 空间复杂度吗?

java 复制代码
class Solution {
    public List<Integer> getRow(int rowIndex) {
        List<List<Integer>> list = new ArrayList<>();
        for (int i = 0; i <= rowIndex; i++) {
            List<Integer> temp = new ArrayList<>();
            if (i == 0) {
                temp.add(1);
            } else {
                List<Integer> last = list.get(i - 1);
                for (int j = 0; j < last.size(); j++) {
                    if (j == 0) {
                        temp.add(last.get(j));
                    }
                    if (j > 0) {
                        temp.add(last.get(j - 1) + last.get(j));
                    }
                    if (j == last.size() - 1) {
                        temp.add(last.get(last.size() - 1));
                    }
                }
            }
            list.add(temp);
        }
        return list.get(list.size() - 1);
    }
}
相关推荐
2501_931803759 分钟前
线性筛(欧拉筛):从原理到应用
算法
ysu_031413 分钟前
leetcode数据结构与算法5~7:链表双指针与二级指针
数据结构·学习·算法·leetcode·链表
小欣加油16 分钟前
leetcode542 01矩阵
数据结构·c++·算法·leetcode·矩阵·bfs
wu_ye_m29 分钟前
学习c语言第34天 用函数每次输出+1,链式访问,int和void
c语言·学习·算法
星马梦缘39 分钟前
算法设计与分析 作业三 答案与解析
算法·线性规划·二分图匹配·多元最短路·流网络·bellmanford·匈牙利树算法
微风欲寻竹影42 分钟前
Java数据结构——二叉树(Binary Tree)详解
java·数据结构·算法
想吃火锅100542 分钟前
【leetcode】3.无重复字符的最长字串js版
算法·leetcode·职场和发展
smith成长之旅1 小时前
08 | Mem0 框架分析: BM25 的 Sigmoid 归一化
数据库·python·算法
dongf20191 小时前
R 语言随机森林算法
算法·随机森林·r语言
AZaLEan__1 小时前
图论:拓扑排序
算法·深度优先