我想从矢量填充2维数组。从矢量填充数组
我认为解释自己最好的方法是放置一些例子(数组长度为[3,5])。
当载体是:[1,0]
[
[4, 3, 2, 1, 0],
[4, 3, 2, 1, 0],
[4, 3, 2, 1, 0]
]
当载体是:[-1,0]
[
[0, 1, 2, 3, 4],
[0, 1, 2, 3, 4],
[0, 1, 2, 3, 4]
]
当载体是:[-2, 0]
[
[0, 0, 1, 1, 2],
[0, 0, 1, 1, 2],
[0, 0, 1, 1, 2]
]
当载体是:[1,1]
[
[2, 2, 2, 1, 0],
[1, 1, 1, 1, 0],
[0, 0, 0, 0, 0]
]
当载体是:[0,1]
[
[2, 2, 2, 2, 2],
[1, 1, 1, 1, 1],
[0, 0, 0, 0, 0]
]
你有什么想法,一个好的图书馆或计划? 欢迎任何评论。谢谢。
注:我咨询了红宝石“黑客帝国”和“矢量”类,但我看不出有什么办法用我的方式来使用它...
编辑:其实,每个值是多少单元格(从当前单元格到最后一个单元格)根据给定的矢量。
如果我们取其中载体是示例[-2,0],用值* 1 *(在阵列[2,3]):
...我们可以认为这样如:
矢量[-2,0]意味着-2是 代表cols,0代表行。所以如果我们 在数组[2,3]中,我们可以在左边移动1次 (因为2是 为负),长度为2(因为 -2.abs == 2)。我们不会在顶部或底部移动,因为 行的值为0。
我不知道Ruby,但这看起来不像任何语言的标准库中会发现的那种东西。我想你可能需要编写自己的算法。 – 2010-04-26 14:01:46
你能解释一下生成数组的规则吗?这些是唯一可能的矢量值吗? – 2010-04-26 14:02:14