LeetCode 118. 杨辉三角 简单

题目 - 点击直达

  • [1. 118. 杨辉三角 简单](#1. 118. 杨辉三角 简单)
    • [1. 题目详情](#1. 题目详情)
      • [1. 原题链接](#1. 原题链接)
      • [2. 题目要求](#2. 题目要求)
      • [3. 基础框架](#3. 基础框架)
    • [2. 解题思路](#2. 解题思路)
      • [1. 思路分析](#1. 思路分析)
      • [2. 时间复杂度](#2. 时间复杂度)
      • [3. 代码实现](#3. 代码实现)

1. 118. 杨辉三角 简单

1. 题目详情

给定一个非负整数 numRows,生成「杨辉三角」的前 n u m R o w s numRows numRows 行。

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

1. 原题链接

LeetCode 118. 杨辉三角 简单

2. 题目要求

示例 1:

输入: numRows = 5

输出: \[1,1,1,1,2,1,1,3,3,1,1,4,6,4,1]
示例 2:

输入: numRows = 1

输出: \[1]

提示:
1 < = n u m R o w s < = 30 1 <= numRows <= 30 1<=numRows<=30

3. 基础框架

● Cpp代码框架

cpp 复制代码
class Solution {
public:
    vector<vector<int>> generate(int numRows) {
    }
};

2. 解题思路

1. 思路分析

( 1 ) (1) (1) 找到杨辉三角的规则:

  1. 最左边位置上的数都是1;
  2. 对角线位置上的数都是1;
  3. 普通位置上的数 = 上一行且同一列位置的数 + 上一行且前一列位置的数;
  4. 第n行的元素个数是n个;

( 2 ) (2) (2) 进行两层循环,外层循环对应生成n行序列;内层循环对应本次生成的序列,生成规则已知;

2. 时间复杂度

O ( N 2 ) O(N^2) O(N2)

两层循环,共生成 n n n层,第 i i i层生成的元素是 i i i个,其中 1 < = i < = n 1<=i<=n 1<=i<=n;
1 + 2 + 3 + . . . + i + . . . n = ( n ∗ ( n + 1 ) ) / 2 1+2+3+...+i+...n=(n*(n+1))/2 1+2+3+...+i+...n=(n∗(n+1))/2

3. 代码实现

cpp 复制代码
class Solution {
public:
    vector<vector<int>> generate(int numRows) {
        vector<vector<int>> vv;
        for(int i = 0; i < numRows; ++i){
            vector<int> tmp(i + 1);
            for(int j = 0; j <= i; ++j){
                if(j == 0 || j == i){
                    tmp[j] = 1;
                }
                else{
                    tmp[j] = vv[i - 1][j] + vv[i - 1][j - 1];
                }
            }
            vv.push_back(tmp);
        }
        return vv;
    }
};

T h e The The E n d End End

相关推荐
小爷毛毛(卓寿杰)10 分钟前
【Agent 意图识别】输出协议、评估与置信度
人工智能·算法·大模型·prompt·大语言模型·agent
优质酸酸乳13 分钟前
力扣100题之21合并两个有序链表
算法·leetcode·链表
旖旎夜光23 分钟前
LeetCode 137 : 只出现一次的数字 II(位运算) —— 题解
c++·笔记·学习·算法·leetcode·力控
旋生万物36 分钟前
Agent System Prompt 注入螺旋公理:让 AI 推理不跑偏的可复制模板(附完整 Prompt)
人工智能·算法
王老师青少年编程1 小时前
2026年9月GESP真题及题解(C++七级):必经之路
c++·题解·真题·gesp·七级·2026年9月·必经之路
深圳雨林凯AI1 小时前
图案裂变的空间关系原理:元素放大为何必然挤压负空间,以及三个可调变量|雨林凯AI技术拆解
人工智能·算法
tellmewhoisi1 小时前
机器学习:聚类算法
算法·机器学习·聚类
码匠许师傅1 小时前
【C++三方组件】Asio 上篇:回调式 TCP 客户端与服务端
开发语言·c++·tcp/ip
沐欣工作室_lvyiyi1 小时前
家庭水资源节能系统设计(论文+源码)
c++·python·云平台·单片机毕业设计·单片机仿真·电子信息工程毕业设计·机械电子工程
yi0112 小时前
LeetCode 134 加油站:从 双循环暴力 演变到 贪心
linux·算法·leetcode