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

fast access of an element in struct array based on multple criteria

我上次问过。那里的答案非常有帮助。我想建议一个小的变体。我需要访问具有 a(i).x==5.65 && a(i).y==32.23?

struct 数组的那个元素

我可以再次 运行 良好的旧 for 循环并找到所需元素的索引,但我必须多次进行此类查询。最快的数据结构是什么?我应该使用什么方法来搜索 struct 数组以找到所需的元素?

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

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