【发布时间】:2011-10-23 03:57:17
【问题描述】:
我有一个二维数组,想把它转换成一维数组。
二维数组是:
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
转一维数组:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
如何在一维数组中访问元素号6的最近邻,以便在二维数组中访问时得到相同的结果,如
1 2 3
5 6 7
9 10 11
在 C++ 中?
【问题讨论】:
-
带算术。旧索引
m[1][2]新索引m[1*4+2]。旧的最近邻居[x-1][y-1],[x][y-1],x[x+1][y]等,新的:[(x-1)+4*(y-1)],[x+4*(y-1)],[x+1+4*(y-1)]。将4替换为数组的宽度。 -
逻辑,如果你不介意看python代码,可以找here
标签: c++ multidimensional-array