2017-06-05 19 views
0

2つの配列abが交差しているかどうかをチェックしたいと思います。 a = [3, 21]b = [15, 26530, 21, 3]を指定すると、答えはtrueになります。与えられた a = [3, 21]b = [15, 26530]の場合、答えはfalseであるはずです。 アレイが交差しているかどうかを素早く確認

は、私が試した:

a.to_set.intersect?(b.to_set) 

が、この方法は時間がかかります。私はそれをすぐにどうやって行うことができますか

+1

を使用することができますか?クイック選択は、他の回答を妨げる可能性があり、まだ答えに取り組んでいる人には無礼です。急いではありません。将来的には、greenieを適用する前にしばらく待ってください。 –

答えて

3

これを試してください。

(a & b).any? 

とにかく、私は設定操作が最も速いものでなければならないと思います。問題はあなたの配列を変換する必要があり、おそらく彼らは大きいです。

+0

ありがとう!この非常に良い – Andy

+0

私の喜びサー;) – Ursus

+0

5分で私は最高の答えをマークします:)ありがとうございます。 – Andy

0

また、私はあなたが@Ursus'答えにチェックマークを授与に異論はないが、なぜラッシュが選択を行うために

[a-(a-b)].empty? 

または

[b-(b-a)].empty? 
関連する問題