作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在寻找一个函数来执行此操作,
test(3);
#result
3333333
3222223
3211123
3210123
3211123
3222223
3333333
test(1)
#result
111
101
111
我正在尝试的是这个,但我可以找到 i 和 n 之间的任何关系 每个循环。你不能告诉我算法吗?
function test(n) {
return Array.from({ length: (n * 2) + 1 }, () => {
return Array.from({ length: (n * 2) + 1 }, (item, i) => {
return i;
})
});
}
test(3)
结果:
[ [ 0, 1, 2, 3, 4, 5, 6 ],
[ 0, 1, 2, 3, 4, 5, 6 ],
[ 0, 1, 2, 3, 4, 5, 6 ],
[ 0, 1, 2, 3, 4, 5, 6 ],
[ 0, 1, 2, 3, 4, 5, 6 ],
[ 0, 1, 2, 3, 4, 5, 6 ],
[ 0, 1, 2, 3, 4, 5, 6 ] ]
最佳答案
您距离完成这项工作还不到一百万英里。
您可以捕获外部数组索引(y) 和内部数组索引(x)。使用这 2 个值,您可以计算出要在单元格 x、y.. 中放置的内容。
例如..
function test(n) {
return Array.from({ length: (n * 2) + 1 }, (_, y) => {
return Array.from({ length: (n * 2) + 1 }, (_, x) => {
return Math.max(
x > n ? x - n : n - x,
y > n ? y - n : n - y
);
})
});
}
const ret = test(3);
ret.forEach((i) => {
console.log(i.join(""));
});
关于javascript - 蜗牛矩阵数组javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51288400/
我是一名优秀的程序员,十分优秀!