leetcode——杨辉三角

https://leetcode.cn/problems/pascals-triangle/

杨辉三角:

给定一个非负整数 numRows 生成「杨辉三角」的前 *numRows*行。

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

核心思想:找出杨辉三角的规律,发现每一行头尾都是1,中间第j个数等于上一行j-1+ j

这道题要用vector<vector<int>>,其实类似二维数组。因为本人最近正在学习vector,所以就把这道题用vector写了一下。

cpp 复制代码
class Solution {
public:
    vector<vector<int>> generate(int numRows) {
        vector<vector<int>> vv;
        vv.resize(numRows);//开辟杨辉三角的空间
        for(size_t i=0;i<numRows;i++)
        {   //每一行的首和尾都为1
            vv[i].resize(i+1);
            vv[i][0]=1;
            vv[i][vv[i].size()-1]=1;
        }
            //接下来就是对 不等于1的位置进行赋值
        for(size_t i=0;i<vv.size();i++)
        {
            for(size_t j=0;j<vv[i].size();j++)
            {
                if(vv[i][j]!=1)
                {
                    vv[i][j]=vv[i-1][j-1]+vv[i-1][j];
                }
            }
        }
        return vv;
    }
};
相关推荐
Jerry17 分钟前
LeetCode 189. 轮转数组
算法
Jerry1 小时前
LeetCode 739. 每日温度
算法
2601_954526755 小时前
【工业传感与算法实战】温漂补偿与零点抗漂破局:基于二阶多项式拟合的 C/C++ 边缘校准算法,深度拆解“压力变送器什么牌子好”的技术硬指标
c语言·c++·算法
叩码以求索6 小时前
浅谈:算法萌新如何高效刷题应对面试(一)
算法·面试·职场和发展
谙弆悕博士7 小时前
信息系统项目管理师教程(第4版)笔记——第 2 章 信息技术发展
笔记·职场和发展·软考高级·软考·高项·项目经理
c238568 小时前
把 C++ 内存分配拆透:new 与 malloc 的三层血缘
开发语言·c++·算法
aaaameliaaa9 小时前
指针之总结
c语言·笔记·算法
宵时待雨9 小时前
优选算法专题9:哈希表
数据结构·算法·散列表
txzrxz9 小时前
最短路问题——Dijkstra 算法
数据结构·c++·算法·最短路·优先队列
gwf2169 小时前
磨损均衡算法(Wear Leveling)——SSD如何让每块闪存“公平退休“?
运维·数据库·人工智能·python·嵌入式硬件·算法·智能硬件