【发布时间】:2013-10-23 09:15:07
【问题描述】:
假设我有一个算法可以使用{1,...,8}^nn-维方格在n-维的棋盘上下棋。
算法本身在n 维度上工作没有问题,给定一个n 维数组或用于棋盘表示的ArrayList。问题是n要在运行时指定。
有没有什么优雅的方式来生成和使用这样的n维棋盘?
我想到的是一个递归函数,用于创建一个n 维 ArrayList,如果 n == 1 返回一个整数 ArrayList,并返回一个 ArrayList 的 ArrayList,其中第二组 ArrayLists 的每个 ArrayList 都有维度 @ 987654330@.
但这似乎一点都不优雅……
[编辑]
在我发表评论之前似乎已删除的答案建议生成一个列表,其中包含其他大小为 8 的列表。如果我在第一个列表中使用 8 ^ numberOfDimensions 多个列表,这可能会起作用,但它会强制我手动跟踪尺寸。
【问题讨论】: