基于多个条件快速访问struct数组中的元素

时间:2017-04-07 18:30:35

标签: arrays matlab search matlab-struct

我上次问过this question。答案那里非常有帮助。我想建议一个轻微的变体。我需要访问具有struct的<{1}}数组的元素?

我再次运行良好的旧a(i).x==5.65 && a(i).y==32.23循环并找到所需元素的索引,但我必须多次进行此类查询。这样做的最快数据结构是什么?我应该使用什么方法来搜索for数组以找到所需的元素?

1 个答案:

答案 0 :(得分:2)

您可以使用点索引生成comma-separated list,然后将其强制转换为数组。然后,您可以对生成的数组执行逻辑运算,以生成logical数组,您可以使用该数组将索引编入struct数组

b = a([a.x] == 5 & [a.y] == 32)