我想從矢量填充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