首先我们来看一下什么是杨辉三角

由上图我们可以找一下规律:

  arr[0][0]=1arr[1][0]=1 arr[1][1]=1arr[2][0]=1 arr[2][1]=2 arr[2][2]=1arr[3][0]=1 arr[3][1]=3 arr[3][2]=3 arr[3][3]=1可以发现以下规律:arr[i][j]=arr[i-1][j-1]+arr[i-1][j]注意:每一行的第一个和最后一个都为1所以可以得到两个条件当j=0时,arr[i][0]=1当i=j时,arr[i][j]=1

有了这些规律我们就可以开始写代码了

//1.首先创建一个新数组
var arr=[];
//2.创建杨辉三角的函数function yhsj(num) {//3.在空数组里创建二维数组 创建出来即arr[[],[],[],[],[]....]for (var z = 0; z < num; z++) {arr.push([]);}//这里的i代表行数,遍历一维数组,为一维数组添加元素for (var i = 0; i < 10; i++) {//这里代表第i行的第j个数,添加元素for (var j = 0; j <= i; j++) {//以下的判断就是上面总结的规律if (i == j) {arr[i][j] = 1;} else if (j == 0) {arr[i][j] = 1;} else {arr[i][j] = arr[i - 1][j - 1] + arr[i - 1][j];}}}return arr;}var a = yhsj(10);console.log(a);

此时可以看到打印结果为:

JavaScript编写杨辉三角相关推荐

  1. js算法集合(二) javascript实现斐波那契数列 (兔子数列) Javascript实现杨辉三角...

    js算法集合(二)  斐波那契数列.杨辉三角 ★ 上一次我跟大家分享一下做水仙花数的算法的思路,并对其扩展到自幂数的算法,这次,我们来对斐波那契数列和杨辉三角进行研究,来加深对Javascript的理 ...

  2. 浅谈PHP编写杨辉三角算法

    PHP编写杨辉三角算法如下: <?php function test($n) {for ($i=1;$i<$n;$i++) {for ($j=1;$j<=$i;$j++) {if ( ...

  3. JavaScript打印杨辉三角

    1.什么是杨辉三角? 1  1 1  1 2 1  1 3 3 1  1 4 6 4 1 上面就是一个简单的杨辉三角的例子 观察一下, 第n行有n个元素, 第n行的第一个元素和第n个元素为1, 其他元 ...

  4. 用python编写杨辉三角金字塔_用python实现三道简单算法题:杨辉三角,蛇形矩阵,金字塔...

    分享几道简单的python打印输出的问题,本质上都是可以将其分解成一个大循环之中有几个小循环. 1.杨辉三角 主要特点: 每个数等于它上方两数之和. 每行数字左右对称,由1开始逐渐变大. 每行端点与结 ...

  5. 用c语言编程写出杨辉三角,用C语言编写杨辉三角

    今天给大家带来用C语言在屏幕上输出杨辉三角 杨辉三角: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 思路:主要用到循环和数组的知识,今天就以for循环为例,给大家输出10行的杨辉三角. ...

  6. c语言字母杨辉三角,用C语言编写杨辉三角(示例代码)

    今天给大家带来用C语言在屏幕上输出杨辉三角 杨辉三角: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 思路:主要用到循环和数组的知识,今天就以for循环为例,给大家输出10行的杨辉三角. ...

  7. c语言二维函数杨辉三角,C语言编写杨辉三角(二维数组方法)

    C语言实现杨辉三角(二维数组) 杨辉三角是什么 杨辉三角,是二项式系数在三角形中的一种几何排列,中国南宋数学家杨辉1261年所著的<详解九章算法>一书中出现.在欧洲,帕斯卡(1623--- ...

  8. 用javascript输出杨辉三角到页面上

    与杨辉三角联系最紧密的是二项式乘方展开式的系数规律,即二项式定理.但是本文用递归的思想,用更易懂的方式解决这个复杂的数学计算问题. <!DOCTYPE html> <html lan ...

  9. C语言编写杨辉三角(二维数组方法)

    C语言实现杨辉三角(二维数组) 杨辉三角是什么 杨辉三角,是二项式系数在三角形中的一种几何排列,中国南宋数学家杨辉1261年所著的<详解九章算法>一书中出现.在欧洲,帕斯卡(1623--- ...

最新文章

  1. 3.1.1蛮力法之选择排序
  2. 创建 桌面、发送到...、快速启动栏、开始菜单、程序菜单、右键菜单 快捷方式...
  3. Cissp-【第3章 安全工程】-2021-2-18(237页-248页)
  4. python3.8使用requests_python3.8.1 入门基础学习 之 【 requests 基础学习,python3爬虫必备基础】...
  5. ubuntu root用户没有声音(提示”正在等待声音系统响应”)
  6. 开发常见错误解决(3)VS2005调试程序出错,绑定句柄无效 Terminal Services
  7. NDK,动态链接库,JNI
  8. pandas将字典转换成dataframe,两重字典
  9. 有关Drools业务规则引擎的完整教程
  10. iOS中有两种支持机制:Notification和KVO(Key-Value Observing)
  11. ElasticSearch原理
  12. Linux读写执行权限
  13. (59)简单介绍RAM IP核类型和接口信号?
  14. 停电导致IIS问题,解决inetinfo的CPU占用很大
  15. 计算机网络-自顶向下方法(7th) 第一章 Review Questions 中英对照
  16. 【收藏】图片垂直居中的解决办法
  17. postgresql安装hypopg
  18. c语言变量命名规则_数据的来龙去脉——常量与变量
  19. android 1024 github,1024 怎么能少了这款高颜值、敲实用的 GitHub 第三方客户端呢?...
  20. iptables如何删除一条规则

热门文章

  1. Debian 中 安装baka-mplayer播放器
  2. 候选区域(Region proposals )
  3. java 覆盖_Java 方法覆盖
  4. instagram包名_如何更改您的Instagram用户名和显示名称
  5. 梦幻诛仙mysql_1H1G2M100G 服务器搭建梦幻诛仙教程带端(老鸟勿扰)
  6. MPC5744-SPI
  7. 使用HttpClient实现文件的上传下载
  8. org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): xxx.xxxMapper.selec
  9. 老老实实的程序员该如何描述自己的缺点
  10. King is the king