【发布时间】:2013-09-27 15:29:02
【问题描述】:
我有一个项目,我在其中读取具有 1 个或多个维度的数组,对于这个项目,我需要能够快速确定给定元素的邻居。我不提前知道维度,我同样不提前知道维度的大小。存储这些数据的最佳 C++ 数据结构是什么?一位同事推荐了一个向量的向量。 . .,但这似乎非常笨拙。
【问题讨论】:
-
邻居是什么意思?
-
如果只有一维:索引 x 有邻居 x-1 和 x+1 ;;;二维:索引 (x,y) 有邻居 (x-1,y)、(x+1,y)、(x,y-1)、(x,y+1) 等
-
您对程序的输入是什么?我猜数组的维度和数组元素? (如2*3和1、2、3、4、5、6)?
-
是的,除非数据不在 C++ 数组中;它在一个专有的包装类中,我必须从中提取数据。
-
您只想要正交邻居? (即在二维情况下,最多有 4 个)还是您想要“完整邻域”,二维情况下最多可以有 8 个邻居?
标签: c++ arrays data-structures multidimensional-array neighbours