快速检测matlab数组

时间:2017-11-26 21:15:47

标签: matlab

我的脚本会生成一些数组。我有一个值列表,不应该在数组中。对是对称的,如果我不喜欢对[1 2],那么对[2 1]也是不好的。要检测“坏”数组,我使用以下方法:

%% SAMPLE DATA
Pair2Find=[1,2;4,6;7,10]; % value pairs to detect
Seq=randi(10,1,10000); % array where detect pairs
%% DETECTION
for iPair=1:size(Pair2Find)
   idx=find(or(Seq(1:end-1)==Pair2Find(iPair,1)&Seq(2:end)==Pair2Find(iPair,2),...
       Seq(1:end-1)==Pair2Find(iPair,2)&Seq(2:end)==Pair2Find(iPair,1)));
   if (~isempty(idx))
       display('Bad array')
       break
   end
end

一切正常,但这是我的计划的瓶颈。

您能否帮助我提高此代码的质量和速度

0 个答案:

没有答案