假设我有一个从左到右、从上到下的索引 12(第 12 个元素)。
我有一个数组 [4] [4]。
给定一维索引 12,计算索引 [3][2] 的最快方法是什么?(一维索引从 1 开始)。
谢谢
不知道这是否最快,但绝对简单:
假设数组[x][y]
ix = floor(index / y)
iy = index % y
例子:
01
23
45
x = 3
y = 2
index = 3
ix = floor(3 / 2) = 1
iy = 3 % 2 = 1
index = 5
ix = floor(5 / 2) = 2
iy = 5 % 2 = 1
给定 a[x][y] 是数组
使用这个公式
[index of 1d array]= (rnum * colsize) + (colnum + 1)
所以对于 a[3][2]colsize=4
= (3 * 4) + (2 + 1)
= 15