0

作为函数的输入,我得到了一个目标元素T数组 和一个结构数组,S其中每个结构都有一个.elems字段,这是一个整数(元素)列表。

我确信在 Matlab 中有一种简单的方法可以做到这一点。如何获取包含i特定元素的所有结构tT索引?S(i).elemst

4

1 回答 1

0

所以我认为你需要用一个arrayfun来做到这一点。我做了:

S = ... (1-by-N array of structs);
T = ... (1-by-K array of numbers);
indices = find(arrayfun(@(i)any(ismember(T, S(i).elems)), 1:numel(S)));

any(ismember(T, S(i)elems))测试是 T 中的任何东西都在 S(i).elems 中。对arrayfunS 中的每个结构重复此操作。find从 arrayfun 返回的逻辑数组中提取索引。

于 2012-04-22T14:37:58.437 回答