作者cashpaggy (布丁女孩)
看板MATLAB
標題[問題] 陣列內找值
時間Tue Mar 27 10:37:25 2012
假設我有多個一維陣列
a=[1 3 2 15 88 20 11 ...];
b=[11 25 55 45 23 34 ...];
...
query=[24 39];
我想要找出同時包含這兩個元素的陣列
並印出其陣列中的位置
也希望可以按query的順序印出位置
/搜尋過find 可是對find不是太孰悉
或者有其他函式可以用呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.64.91.30
1F:→ Rasin:pos=find(a==query(1)) 03/27 14:06
2F:→ Rasin:a(pos) 03/27 14:07
但是query的兩個元素不一定會相鄰
有可能中間會間隔數個甚至多個元素
而且順序也未必會一樣
是這樣寫嗎?
※ 編輯: cashpaggy 來自: 203.64.91.30 (03/27 14:45)
3F:→ Rasin:跑了再說吧 03/27 18:27
4F:→ mp19990920:iFind = ismember(a, query); 03/27 23:02
5F:→ mp19990920:index = 1:numel(a); 03/27 23:03
6F:→ mp19990920:index(iFind)即為所求,b亦然 03/27 23:04
7F:→ cashpaggy:感謝樓上兩位! 03/28 11:00