利用js实现杨辉三角队列
程序员文章站
2022-06-06 22:52:10
...
所谓‘杨辉三角’,如下图:
其分布直观上很清晰明了,但在用编程语言实现这一图案时,方法各有异同,在s实现‘杨辉三角’代码如下:
// param: max 行数
function triangles(max) {
var arr = [1];
var result = [];
var n = 0;
for (; n < max; n++) {
var currentArr = arr;
result.push(currentArr);
var list = [];
arr.push(0);
for (var i = 0; i < arr.length; i++) {
if ((i - 1) < 0) {
list.push(0 + arr[i]);
} else {
list.push(arr[i - 1] + arr[i]);
}
}
arr = list;
}
for (var i = 0; i < result.length; i++) {
result[i].pop();
}
return result;
}
var result = triangles(10);
console.dir(result);
此处需要注意的一点,因为数组为引用类型,因此在最后需要给result中的每一项去除最后一位。
所得到的结果如下:
完。