【发布时间】:2009-11-17 23:47:01
【问题描述】:
我有一个大的二维数组A,还有一个包含两个元素的平面数组B。如何使用B 中的数字(坐标)快速访问A 数组中的元素?我现在唯一能做的就是:
A[B[0],B[1]]
但是通过我的班级成员的名字到这些实际数组的路径太长太脏了,实际的数组名也太长了......所以我想知道它是否可以减轻这项工作。
【问题讨论】:
-
那将是一个数组切片,而不是二维查找。
我有一个大的二维数组A,还有一个包含两个元素的平面数组B。如何使用B 中的数字(坐标)快速访问A 数组中的元素?我现在唯一能做的就是:
A[B[0],B[1]]
但是通过我的班级成员的名字到这些实际数组的路径太长太脏了,实际的数组名也太长了......所以我想知道它是否可以减轻这项工作。
【问题讨论】:
x = B[0]
y = B[1]
A[x][y]
【讨论】:
x,y = B!
将 A 转换为以二元素数组为键的 Hash 怎么样?所以你现在有这样的东西:
A = [["TopL","TopR"],["CenterL","CenterR"],["BottomL","BottomR"]]
B = [[0,1],[1,0],[2,1]]
A[B[x][0]][B[x][1]]
你应该有:
A = {[0,0] => "TopL", [0,1] => "TopR", [1,0] => "CenterL", [1,1] => "CenterR", [2,0] => "BottomL", [2,1] => "BottomR"}
B = [[0,1],[1,0],[2,1]]
A[B[x]]
不知道这对你的实际情况是否有帮助,但也许它会给你一些想法。
【讨论】: