JS实现的杨辉三角【帕斯卡三角形】算法示例


Posted in Javascript onFebruary 26, 2019

本文实例讲述了JS实现的杨辉三角【帕斯卡三角形】算法。分享给大家供大家参考,具体如下:

杨辉三角,是二项式系数在三角形中的一种几何排列,在中国南宋数学家杨辉1261年所著的《详解九章算法》一书中出现。 在欧洲,帕斯卡(1623-1662)在1654年发现这一规律,所以这个表又叫做帕斯卡三角形。 帕斯卡的发现比杨辉要迟393年,比贾宪迟600年。

JS实现的杨辉三角【帕斯卡三角形】算法示例

题目: 给定非负整数numRows,生成Pascal三角形的第一个numRows。在Pascal的三角形中,每个数字是它上面两个数字的总和。

输入: 5

输出:

[
     [1],
    [1,1],
   [1,2,1],
  [1,3,3,1],
 [1,4,6,4,1]
]

JS代码如下:

<script>
var generate = function(numRows) {
  if (numRows) {
    var result = [[1]];
    for(var i = 1;i < numRows;i++) {
      result[i] = [];
      for(var j = 0; j < i + 1;j++) {
        result[i][j] = (result[i - 1][j] || 0) + (result[i - 1][j - 1] || 0);
      }
    }
    return result;
  }else {
    return [];
  }
};
console.log(generate(1000));
</script>

使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码,可得如下运行结果:

JS实现的杨辉三角【帕斯卡三角形】算法示例

由于数据比较多,这里仅展示一部分运算结果,感兴趣的朋友可以自己动手测试一下,看看运行效果。

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
javascript object array方法使用详解
Dec 03 Javascript
javascript实现促销倒计时+fixed固定在底部
Sep 18 Javascript
JavaScript中的全局对象介绍
Jan 01 Javascript
jQuery中toggleClass()方法用法实例
Jan 05 Javascript
JavaScript判断前缀、后缀是否是空格的方法
Apr 15 Javascript
详解利用 Express 托管静态文件的方法
Sep 18 Javascript
javaScript和jQuery自动加载简单代码实现方法
Nov 24 jQuery
AngularJs 禁止模板缓存的方法
Nov 28 Javascript
pace.js和NProgress.js两个加载进度插件的一点小总结
Jan 31 Javascript
vue 解决循环引用组件报错的问题
Sep 06 Javascript
webpack 静态资源集中输出的方法示例
Nov 09 Javascript
vue watch监控对象的简单方法示例
Jan 07 Vue.js
create-react-app使用antd按需加载的样式无效问题的解决
Feb 26 #Javascript
JS实现电话号码的字母组合算法示例
Feb 26 #Javascript
JS实现的合并两个有序链表算法示例
Feb 25 #Javascript
JS实现判断有效的数独算法示例
Feb 25 #Javascript
js实现通过开始结束控制的计时器
Feb 25 #Javascript
js实现倒计时器自定义时间和暂停
Feb 25 #Javascript
JS module的导出和导入的实现代码
Feb 25 #Javascript
You might like
ThinkPHP页面跳转success与error方法概述
2014/06/25 PHP
php中chdir()函数用法实例
2014/11/13 PHP
Yii2学习笔记之汉化yii设置表单的描述(属性标签attributeLabels)
2017/02/07 PHP
php操作redis命令及代码实例大全
2020/11/19 PHP
JavaScript中的几个关键概念的理解-原型链的构建
2011/05/12 Javascript
JS事件Event元素(兼容IE,Firefox,Chorme)
2012/11/01 Javascript
js判断运行jsp页面的浏览器类型以及版本示例
2013/10/30 Javascript
javascript字符串函数汇总
2015/12/06 Javascript
javascript html5实现表单验证
2016/03/01 Javascript
使用jQuery制作基础的Web图片轮播效果
2016/04/22 Javascript
JavaScript学习小结之使用canvas画“哆啦A梦”时钟
2016/07/24 Javascript
Vue.js -- 过滤器使用总结
2017/02/18 Javascript
Angular2里获取(input file)上传文件的内容的方法
2017/09/05 Javascript
浅谈vue2 单页面如何设置网页title
2017/11/08 Javascript
实例解析ES6 Proxy使用场景介绍
2018/01/08 Javascript
Nuxt.js踩坑总结分享
2018/01/18 Javascript
vue.js中实现登录控制的方法示例
2018/04/23 Javascript
VUE2.0中Jsonp的使用方法
2018/05/22 Javascript
vue项目中跳转到外部链接的实例讲解
2018/09/20 Javascript
使用Node.js在深度学习中做图片预处理的方法
2019/09/18 Javascript
vue中watch和computed为什么能监听到数据的改变以及不同之处
2019/12/27 Javascript
jQuery实现的图片点击放大缩小功能案例
2020/01/02 jQuery
python获取当前计算机cpu数量的方法
2015/04/18 Python
Python使用logging模块实现打印log到指定文件的方法
2018/09/05 Python
python3+selenium自动化测试框架详解
2019/03/17 Python
解决Tensorflow 使用时cpu编译不支持警告的问题
2020/02/03 Python
Python列表如何更新值
2020/05/27 Python
基于html5 DeviceOrientation 实现微信摇一摇功能
2015/09/25 HTML / CSS
基于HTML5 Canvas的3D动态Chart图表的示例
2017/11/02 HTML / CSS
Bootstrap File Input文件上传组件
2020/12/01 HTML / CSS
美国健康和保健平台:healtop
2020/07/02 全球购物
Ajax实现页面无刷新留言效果
2021/03/24 Javascript
运动会广播稿60字
2014/01/15 职场文书
初中生活随笔
2015/08/15 职场文书
详解如何用Python实现感知器算法
2021/06/18 Python
一文彻底理解js原生语法prototype,__proto__和constructor
2021/10/24 Javascript