杨辉三角

作者: 元气满满321 | 来源:发表于2019-06-16 15:13 被阅读0次

杨辉三角:
方法1如下,采用递归,测试输入第100行,第100列,就会超时

function f(n,m){
  if(n<m){
    return ;
  }
  if(m==1 || n==m){
    return 1;
  }else{
    return f(n-1,m-1) + f(n-1,m);
  }
}
console.log(f(7,5));//15       

为满足大数要求,采用递推方式,将值存到二维数组中,减少重复计算

function f(n,m){
  let arr = [];
  for(let i=1;i<=n;i++){
    arr[i] = new Array();
  }
  for(let i=1;i<=n;i++){
    for(let j=1;j<=i;j++){
      if(j==1 || j==i){
        arr[i][j] = 1;
      }else{
        arr[i][j] = arr[i-1][j-1] + arr[i-1][j];
      }
    }
  }
  return arr[n][m];
}
console.log(f(7,5));//15

相关文章

  • 打印杨辉三角形

    杨辉三角形Java实现打印杨辉三角形,代码如下:

  • 杨辉三角

    杨辉三角

  • 2019-04-02

    杨辉三角

  • 杨辉三角的几种解法(python)

    1. 计算杨辉三角,普通法 2. 计算杨辉三角 补0法 3. 杨辉三角,对称法 中点的确定:[1][1,1][1,...

  • pascals-triangle-ii

    杨辉三角 II 给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行。 在杨辉三角中,每个数是它左上...

  • C语言 | 杨辉三角形

    C语言 | 杨辉三角形 在屏幕上显示杨辉三角形: 问题分析与算法设计 杨辉三角问题,正是(x + y)的N次方...

  • 队列杨辉三角

    杨辉三角 杨辉三角的特点是,两腰都是1,中间的数=上面两个数之和。 使用队列思想实现杨辉三角的流程 首先,需要初始...

  • 二维数组

    二维数组树出杨辉三角:打印杨辉三角形(行数可以键盘录入)

  • Java二维数组

    二维数组树出杨辉三角:打印杨辉三角形(行数可以键盘录入)

  • 118. 杨辉三角

    【Description】给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。 在杨辉三角中,...

网友评论

    本文标题:杨辉三角

    本文链接:https://www.haomeiwen.com/subject/slzwfctx.html