leetcode做题笔记118. 杨辉三角

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

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

思路一:动态规划

cpp 复制代码
int** generate(int numRows, int* returnSize, int** returnColumnSizes){
    int **returnnum=(int **)malloc(sizeof(int *)*numRows);
    *returnSize = numRows;
    *returnColumnSizes = malloc(sizeof(int) * numRows);
    int i,j;
    for(i=0;i<numRows;i++){
        returnnum[i]=(int *)malloc(sizeof(int)*(i+1));
        (*returnColumnSizes)[i]=i+1;
        returnnum[i][0]=1;
        returnnum[i][i]=1;
        if(i>=2){
            for(j=1;j<i;j++){
                returnnum[i][j]=returnnum[i-1][j-1]+returnnum[i-1][j];
            }
        }
    }
    return returnnum;
}

分析:

本题要求杨辉三角,每个数为上一行相同位置和前一位数之和,可用循环将每个数利用上一行计算出来,最后输出dp,即returnnum

总结:

本题考察动态规划的应用,找到状态方程dp[i][j] = dp[i-1][j-1]+dp[i-1][j]即可解决

相关推荐
Σίσυφος19004 分钟前
正则化数据并校准数据
人工智能·算法·机器学习
HZ·湘怡7 分钟前
基于动态数组的栈(顺序栈)01
数据结构·算法
Genevieve_xiao8 分钟前
【xjtuse】【数学建模】课程笔记(六)线上学习
笔记·学习·数学建模
Chen_harmony8 分钟前
十八、C语言内存函数
c语言·算法
晓梦林12 分钟前
HiddenGate靶场学习笔记
笔记·安全·web安全
__Coffee__26 分钟前
封装矩阵结构体
线性代数·算法·矩阵
变量未定义~34 分钟前
字符串哈希匹配字符串
数据结构·算法·哈希算法
周末也要写八哥38 分钟前
浅谈二叉树的深度优先搜索(DFS)算法
算法·深度优先
智者知已应修善业1 小时前
【74ls138+74ls00传送带故障报警】2024-1-9
驱动开发·经验分享·笔记·硬件架构·硬件工程
ljt27249606611 小时前
Vue笔记(四)--组件基础
前端·vue.js·笔记