JS實現的楊輝三角【帕斯卡三角形】算法示例
本文實例講述了JS實現的楊輝三角【帕斯卡三角形】算法。分享給大家供大家參考,具體如下:
楊輝三角,是二項式系數在三角形中的一種幾何排列,在中國南宋數學家楊輝1261年所著的《詳解九章算法》一書中出現。 在歐洲,帕斯卡(1623-1662)在1654年發(fā)現這一規(guī)律,所以這個表又叫做帕斯卡三角形。 帕斯卡的發(fā)現比楊輝要遲393年,比賈憲遲600年。
題目: 給定非負整數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.jb51.net/code/HtmlJsRun測試上述代碼,可得如下運行結果:
由于數據比較多,這里僅展示一部分運算結果,感興趣的朋友可以自己動手測試一下,看看運行效果。
更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript數學運算用法總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript數組操作技巧總結》、《JavaScript排序算法總結》、《JavaScript遍歷算法與技巧總結》、《JavaScript查找算法技巧總結》及《JavaScript錯誤與調試技巧總結》
希望本文所述對大家JavaScript程序設計有所幫助。
相關文章
innerHTML,outerHTML,innerText,outerText的用法及區(qū)別解析
本篇主要是對innerHTML,outerHTML,innerText,outerText的用法及區(qū)別進行了詳細的介紹,需要的朋友可以過來參考下,希望對大家有所幫助2013-12-12JS中style.display和style.visibility的區(qū)別實例說明
下面的例子說明了這種區(qū)別:在這個例子中,divContent1和divContent2隱藏的時候用的是style.display=none,這時候,后面的div會向上移動,占據已經隱藏的div的空間。divContent3和divContent4用的是style.visibility=hidden來隱藏,但是其隱藏后仍然占據原來的空間2013-03-03