C++每日一练——杨辉三角

给定一个非负整数 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 <= numRows <= 30
cpp 复制代码
// 涉及resize / operator[]
// 核心思想:找出杨辉三角的规律,发现每一行头尾都是1,中间第[j]个数等于上一行[j-1]+[j]
class Solution {
public:
     vector<vector<int>> generate(int numRows) {
         vector<vector<int>> vv(numRows);
         for(int i = 0; i < numRows; ++i)
         {
             vv[i].resize(i+1, 1);
         }
         for(int i = 2; i < numRows; ++i)
         {
             for(int j = 1; j < i; ++j)
             {
                 vv[i][j] = vv[i-1][j] + vv[i-1][j-1];
             }
         }
         return vv;
     }
};
相关推荐
U-52184F694 分钟前
深入理解“隐式共享”与“写时复制”:从性能魔法到内存深坑
java·数据库·算法
pp起床23 分钟前
Part02:基本概念以及基本要素
大数据·人工智能·算法
lzh2004091927 分钟前
红黑树详解
算法
U-52184F6934 分钟前
深度解析:从 Qt 的 Q_D 宏说起,C++ 工业级 SDK 是如何保证 ABI 稳定性的
数据库·c++·qt
迈巴赫车主40 分钟前
蓝桥杯20560逃离高塔
java·开发语言·数据结构·算法·职场和发展·蓝桥杯
泯仲1 小时前
Ragent项目7种设计模式深度解析:从源码看设计模式落地实践
java·算法·设计模式·agent
dulu~dulu1 小时前
算法---寻找和为K的子数组
笔记·python·算法·leetcode
moonsea02031 小时前
【无标题】
算法
佑白雪乐1 小时前
<ACM进度212题>[2026-3-1,2026-3-26]
算法·leetcode
穿条秋裤到处跑1 小时前
每日一道leetcode(2026.03.26):等和矩阵分割 II
算法·leetcode·矩阵