Leetcode 119. 杨辉三角 II

主要思路:先将杨辉三角的二维数组预处理出来,再根据题目要求,求出rowIndex行。

Python:

python 复制代码
class Solution:
    def getRow(self, rowIndex: int) -> List[int]:
        yh_trigle = [[0] * 34 for _ in range(34)]
        for i in range(34):
            yh_trigle[i][i] = 1
            yh_trigle[i][0] = 1
            for j in range(1, i):
                yh_trigle[i][j] = yh_trigle[i - 1][j] + yh_trigle[i - 1][j - 1]
        return yh_trigle[rowIndex][0: rowIndex + 1]

C++:(自己写的老出现越界的情况,实在不明白!!!,以下参考了灵神的代码,但是我的思路是一样的)

cpp 复制代码
const int MX = 34;
vector<int> c[MX];

auto init = []() {
    for (int i = 0; i < MX; i++) {
        c[i].resize(i + 1, 1);
        for (int j = 1; j < i; j++) {
            // 左上方的数 + 正上方的数
            c[i][j] = c[i - 1][j - 1] + c[i - 1][j];
        }
    }
    return 0;
}();

class Solution {
public:
    vector<int> getRow(int rowIndex) {
        return c[rowIndex];
    }
};

加油!!!

相关推荐
阿kun要赚马内1 小时前
C++中的Windows API双缓冲技术
c++
mit6.8247 小时前
Xai架构
算法
WBluuue7 小时前
Codeforces 1078 Div2(ABCDEF1)
c++·算法
geovindu7 小时前
python: Memento Pattern
开发语言·python·设计模式·备忘录模式
学无止境_永不停歇7 小时前
十、C++多态
开发语言·c++
寻星探路8 小时前
【JVM 终极通关指南】万字长文从底层到实战全维度深度拆解 Java 虚拟机
java·开发语言·jvm·人工智能·python·算法·ai
lbb 小魔仙8 小时前
【Java】Java 实战项目:手把手教你写一个电商订单系统
android·java·python
岱宗夫up8 小时前
FastAPI入门(上篇):快速构建高性能Python Web API
开发语言·前端·python·fastapi
老歌老听老掉牙8 小时前
QT开发踩坑记:按钮点击一次却触发两次?深入解析信号槽自动连接机制
c++·qt
Dxy12393102168 小时前
中文乱码恢复方案
开发语言·python