私のスクリプトはいくつかの配列を生成します。私は値のペアのリストを配列に入れてはいけません。ペアは対称ですが、ペア[1 2]が好きでなければ、ペア[2 1]も悪いです。 「悪い」配列を検出するには、次の方法を使用します。速い方法は、MATLAB配列の値のペアの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
すべては問題なく動作しますが、プログラムのボトルネックです。あなたのペアの行列が非常に大きい場合は、次のよう
はあなたが