杨辉三角 末蓝、 2022-12-26 15:26 292阅读 0赞 ### 一、什么是杨辉三角 ### > **杨辉三角**:是**二项式系数**在三角形中的一种几何排列。 > 杨辉三角的每个数等于它上方两数之和。 > ![在这里插入图片描述][20201206114053340.gif] ### 二、求杨辉三角第n行 ### > 杨辉三角第n行第m个数的值为组合数 C n − 1 m − 1 C\_\{n-1\}^\{m-1\} Cn−1m−1 的结果 1. 代码 > [leetcode 119题 杨辉三角Ⅱ][leetcode 119_] /** * @param {number} rowIndex * @return {number[]} */ var getRow = function(rowIndex) { /** * 数学法 * 杨辉三角第n行第m项 = C(n-1, m-1)的组合数 * 时间复杂度:O(n) * 空间复杂度:O(n) 存储结果 */ // 预处理(无) // 组合数计算函数 function c(_base, _select){ /** * 组合数计算 * @param { number } _base: 选择基 * @parem { number } _select: 选择数 * @return { number }: 计算 _base 选 _select的组合数 */ if(_select === 0) return 1; return Array.from({ length: _select}, (v, i) => _base - i).reduce((pre, curr) => pre * curr) / Array.from({ length: _select}, (v, i) => i + 1).reduce((pre, curr) => pre * curr); } // 计算第rowIndex+1行的结果 let result = []; // 计算一半结果(杨辉三角每一行延中轴对称) let halfLen = Math.ceil((rowIndex+1) / 2); for(let i=1; i<=halfLen; i++){ result.push(c(rowIndex, i-1)); } // 对称复制一半结果 for(let i=0; i<halfLen; i++){ result.push(result[halfLen-1-i]); } // 当前行有奇数个结果,剔除一个 ((rowIndex+1) % 2 === 1) && result.splice(halfLen, 1); return result; }; [20201206114053340.gif]: /images/20221120/9d921cf938e24d19892af2e28a98afdd.png [leetcode 119_]: https://leetcode-cn.com/problems/pascals-triangle-ii/
相关 杨辉三角 一、什么是杨辉三角 > 杨辉三角:是二项式系数在三角形中的一种几何排列。 > 杨辉三角的每个数等于它上方两数之和。 > ![在这里插入图片描述][20201206 末蓝、/ 2022年12月26日 15:26/ 0 赞/ 293 阅读
相关 杨辉三角 蓝桥杯填空题: include<stdio.h> define N 10 int main() { int a[N]={0},i,j 本是古典 何须时尚/ 2022年08月02日 06:54/ 0 赞/ 196 阅读
相关 python杨辉三角 题目:输出杨辉三角的前十行 提示:使用zip(),yield 代码: def trangle(n): l=[1] def _trangle(l 淩亂°似流年/ 2022年07月15日 13:51/ 0 赞/ 178 阅读
相关 java-杨辉三角 打印杨辉三角 package day06; import java.util.Scanner; public class Arra 妖狐艹你老母/ 2022年06月14日 03:49/ 0 赞/ 234 阅读
相关 杨辉三角 package day05; import java.util.Scanner; /\\ \ java基础:键盘录入/二维数组 \ Author: \ Desc 蔚落/ 2022年06月07日 14:13/ 0 赞/ 278 阅读
相关 杨辉三角 题目描述 按要求输入如下格式的杨辉三角 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 最多输出10层 逃离我推掉我的手/ 2022年05月05日 09:56/ 0 赞/ 293 阅读
相关 杨辉三角 import java.util.Scanner; public class Main \{ public static void main(String\[\] ar 柔光的暖阳◎/ 2022年04月22日 08:38/ 0 赞/ 252 阅读
相关 杨辉三角 杨辉三角 import java.util.Scanner; / 需求:打印杨辉三角(行数通过键盘录入) 刺骨的言语ヽ痛彻心扉/ 2022年04月04日 17:44/ 0 赞/ 303 阅读
相关 杨辉三角 打印杨辉三角 代码: import java.util.; public class test1 { / 输出杨辉三角 / 太过爱你忘了你带给我的痛/ 2021年09月23日 08:58/ 0 赞/ 508 阅读
相关 杨辉三角 \include<stdio.h> void f(int a\[\]\[10\],int n) \{ int i=0,j=0; for(i=0;i<n; 港控/mmm°/ 2021年06月24日 13:58/ 0 赞/ 504 阅读
还没有评论,来说两句吧...