Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >37-杨辉三角

37-杨辉三角

作者头像
lexingsen
发布于 2022-02-25 01:07:10
发布于 2022-02-25 01:07:10
18000
代码可运行
举报
文章被收录于专栏:乐行僧的博客乐行僧的博客
运行总次数:0
代码可运行

思路:

本质是递推,可以动态规划做 对于杨辉三角的任意一行,第一个和最后一个元素都是1 中间的元素是由其肩膀上两个元素之和。

代码实现:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include <stdio.h>
#include <stdlib.h>
#define N 10

int* f[N];

void Generate() {
    for (int i = 0; i < N; i++) {
        int* line = malloc(sizeof(int) * (i + 1));
        line[0] = 1;
        line[i] = 1;
        for (int j = 1; j <= i - 1; j++) {
            line[j] = f[i - 1][j - 1] + f[i - 1][j];
        }
        f[i] = line;
    }
}

void Destroy() {
    for (int i = 0; i < N; i++) {
        free(f[i]);
        f[i] = NULL;
    }
}


void Show() {
    for (int i = 0; i < N; i++) {
        for (int j = 0; j <= i; j++) {
            printf("%d", f[i][j]);
            if (j != i) {
                printf(" ");
            }
        }
        printf("\n");
    }
}

int main() {
    Generate();
    Show();
    Destroy();
    return 0;
}

运行结果:

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
杨辉三角及实现
1. 百科: 杨辉三角,又称贾宪三角形,是二项式系数在三角形中的一种几何排列,中国南宋数学家杨辉1261年所著的《详解九章算法》一书中出现。在欧洲,帕斯卡在1654年发现这一规律,所以这个表又叫做帕斯卡三角形。帕斯卡的发现比杨辉要迟393年,比贾宪迟600年。 它把二项式系数图形化,把组合数内在的一些代数性质直观地从图形中体现出来,是一种离散型的数与形的结合。 如图所示: 每行端点与结尾的数为1。 每个数等于它上方两数之和。 第n行的数字有n项。 每行数字左右对称 ---- 2.
怠惰的未禾
2023/04/27
6790
杨辉三角及实现
C语言杨辉三角的实现
想必大家在初高中就听过和学过杨辉三角,那么用C语言如何实现呢?要实现杨辉三角首先得先知道它的特征,以下是我找到的杨辉三角的特点:
利刃大大
2023/04/12
5220
C语言杨辉三角的实现
【重生之学习C语言----杨辉三角篇】
杨辉三角(Pascal's Triangle)是二项式系数在三角形中的一种几何排列。它具有以下特点:
用户11456817
2025/02/07
1660
杨辉三角
【思路分析】首先通过观察可以知道,杨辉三角的第n行共有n个整数,因此如果要存放前10行的杨辉三角,需要定义一个10行10列的二维数组,例如取名为yh。
pigeon
2022/04/11
5490
杨辉三角
数组学习之杨辉三角
如上图,杨辉三角的形式,是一个比较规范的二维数组的左下角一部分。我们定义一个10行10列的二维整型数组int a[10][10];来存储上面的数值。
用户6755376
2019/12/03
5690
数组学习之杨辉三角
SDUT 2019 级程序设计基础(B)II 实验6–动态规划
在下面的数字三角形中寻找一条从顶部到底边的路径,使得路径上所经过的数字之和最大。路径上的每一步都只能往左下或 右下走。只需要求出这个最大和即可,不必给出具体路径。 三角形的行数n大于1小于等于100,数字为 0 – 99 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5
Here_SDUT
2022/06/29
3300
SDUT 2019 级程序设计基础(B)II 实验6–动态规划
【Leetcode-118. 杨辉三角 -119. 杨辉三角Ⅱ】
题目:给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。
YoungMLet
2024/03/01
1270
第十五天、杨辉三角
该文介绍了如何输出杨辉三角,并提供了相应的程序实现。程序首先要求用户输入杨辉三角的高度,然后根据用户输入的层数打印相应的杨辉三角。在打印每一行时,程序会先输出该行的行首数字1,然后输出从第三行开始的每一行的行首数字1,并计算该行的其他数字,最后输出该行的行尾数字1。该程序在每次循环结束时,都会询问用户是否继续打印,如果用户输入1,则继续打印,否则退出循环。
Jack_Cui
2017/12/28
5740
第十五天、杨辉三角
[c语言日记]动态规划入门:杨辉三角
在C语言的学习过程中,动态规划是一个非常重要且实用的概念,可以帮助我们解决复杂的数学问题。今天,我们就以杨辉三角为例,探讨动态规划在C语言中的应用。
siy2333
2025/02/11
1390
[c语言日记]动态规划入门:杨辉三角
找凶手,排名次,杨辉三角打印
日本某地发生了一件谋杀案,警察通过排查确定杀人凶手必为4个嫌疑犯的一个。 以下为4个嫌疑犯的供词 A说:不是我。 B说:是C。 C说:是D。 D说:C在胡说 已知3个人说了真话,1个人说的是假话。 现在请根据这些信息,写一个程序来确定到底谁是凶手。
大海里的番茄
2024/01/19
1830
找凶手,排名次,杨辉三角打印
java学习(一)---打印乘法表与三角
顺便写个c语言的,因为我清楚地记得这是我们大一c语言期末考试的一道题,而且由于c语言只是我们专业的选修课,当时期末试卷手写代码,很滑稽…
IT工作者
2022/04/16
2590
C语言数组例题:输出杨辉三角形
杨辉三角:是二项式系数在三角形中的一种几何排列,中国南宋数学家杨辉1261年所著的《详解九章算法》一书中出现。在欧洲,帕斯卡(1623----1662)在1654年发现这一规律,所以这个表又叫做帕斯卡三角形。帕斯卡的发现比杨辉要迟393年,比贾宪迟600年。
岳泽以
2022/10/26
1.1K0
C语言数组例题:输出杨辉三角形
C++经典算法题-上三角、下三角、对称矩阵
上三角或下三角矩阵也有大部份的元素不储存值(为0),我们可以将它们使用一维阵列来储存以节省储存空间,而对称矩阵因为对称于对角线,所以可以视为上三角或下三角矩阵来储存。
cwl_java
2020/02/13
2.6K0
【Java案例】打印杨辉三角
图1.10 杨辉三角形 案例分析 观察杨辉三角形的图案,可以发现其中的规律:三角形的竖边和斜边都是“1”,三角形里面的任意一个数字正好等于它正上方的数字和左上角的数字两个数字之和。第几行就有几个数字
Java帮帮
2018/03/15
2.5K0
【Java案例】打印杨辉三角
杨辉三角[通俗易懂]
杨辉三角: 叙述性说明 还记得高中的时候,您了解帕斯卡三角?定义这里不再描写叙述,你能够參考下面的图形: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1
全栈程序员站长
2022/07/06
7260
杨辉三角[通俗易懂]
OJ刷题记录:杨辉三角形
题目描述: 杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。
英雄爱吃土豆片
2020/11/12
7340
杨辉三角形
#include <stdio.h> void main() { /*创建时间:2012、9、1; 描述:输出杨辉三角 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 */ int num[6][6]; fo
黄啊码
2020/05/29
5140
POJ 1163 The Triangle【dp+杨辉三角加强版(递归)】
The Triangle Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 49955 Accepted: 30177 Description 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 (Figure 1) Figure 1 shows a number triangle. Write a program that calculates the hi
Angel_Kitty
2018/04/09
4850
OJ算法题已AC
在刷OJ题时遇到了一个题,无论怎么优化,仍然超时, 最后把输出语句换成了append(); 如下:
chenchenchen
2023/01/30
4850
《LeetCode-数组篇一》之杨辉三角与重塑矩阵
前言 本专栏是LeetCode刷题笔记,记录一下自己的做题轨迹,更好的让自己复习这些令人头痛的题目。博主是一个新手,做题水平非常有限,如有错敬请指出,如有对于题目有更优的解法也可以分享给博主,路漫漫其修远兮,算法之路慢慢而求索。
用户10517932
2023/10/07
1760
《LeetCode-数组篇一》之杨辉三角与重塑矩阵
相关推荐
杨辉三角及实现
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验