C++速通LeetCode简单第18题-杨辉三角(全网唯一递归法)

全网唯一递归法:

cpp 复制代码
vector<vector<int>> generate(int numRows) {
    vector<int> v;
    vector<vector<int>>vn;

    if (numRows == 1)
    {
        v.push_back(1);
        vn.push_back(v);
        v.clear();
        return vn;//递归记得return
    }
    if (numRows == 2)
    {
        v.push_back(1);
        vn.push_back(v);
        v.clear();
        v.push_back(1);
        v.push_back(1);
        vn.push_back(v);
        v.clear();
        return vn;//递归记得return
    }
    else
    {
        vn = generate(numRows - 1);//递归精髓
        v = vn[numRows - 2];
        vector<int> v2;
        v2.resize(numRows, 1);
        for (int i = 1; i < numRows - 1; i++)
        {
            v2[i] = v[i-1] + v[i];
        }
        vn.push_back(v2);
        v.clear();
    }
    return vn;
}
相关推荐
xlp666hub10 分钟前
Leetcode 第三题:用C++解决最长连续序列
c++·leetcode
会员源码网1 小时前
构造函数抛出异常:C++对象部分初始化的陷阱与应对策略
c++
有意义2 小时前
深度拆解分割等和子集:一维DP数组与倒序遍历的本质
前端·算法·面试
xlp666hub3 小时前
Leetcode第二题:用 C++ 解决字母异位词分组
c++·leetcode
用户726876103374 小时前
解放双手的健身助手:基于 Rokid AR 眼镜的运动计时应用
算法
Wect4 小时前
LeetCode 17. 电话号码的字母组合:回溯算法入门实战
前端·算法·typescript
不想写代码的星星4 小时前
static 关键字:从 C 到 C++,一篇文章彻底搞懂它的“七十二变”
c++
xlp666hub20 小时前
Leetcode第一题:用C++解决两数之和问题
c++·leetcode
ZhengEnCi1 天前
08c. 检索算法与策略-混合检索
后端·python·算法
程序员小崔日记1 天前
大三备战考研 + 找实习:我整理了 20 道必会的时间复杂度题(建议收藏)
算法·408·计算机考研