JS JavaScript 实现杨辉三角
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
……..
观察这样的一组数,找出规律,用控制台输出这样规律的数
规律:
这是杨辉三角,每一行头尾的数都是 1,其余的数是上一行对应的数字相加,考虑使用递归算法。
答案参考:
function combination(m,n){
if(n == 0) return 1;// 第一个数为 1
else if(m == n) return 1; // 最后一个数为 1
else return combination(m-1,n-1)+combination(m-1,n);// 中间的数为前一行的两个数相加
}
function Print(n){
for(var i = 0 ; i < n ; i++){
let arr=[];// 用来放第 i 行的数
for (var j = 0 ; j <= i ; j++) {
arr.push(combination(i,j));
}
console.log(arr.join(‘ ‘));// 字符串形式输出
}