2011-06-18 5 views
-1

これに最も近いアルゴリズムは何ですか?助けなしに/静的変数を行うことはできますか?すべての要素を互いに比較/一致させるためのアルゴリズム

+1

このアルゴリズムは何を行う必要がありますか?私が見ることができる限り、ints.lengthまで "テストされた"だけインクリメントし、決して一致(..)を呼び出さない。 – radiospiel

+0

は 'i'と同じ'テスト済み 'ではない。私はその場合、「while」が完了するでしょうか? –

+0

@radiospiel、ups you right :-) – lisak

答えて

2

"for"ループを2つ使用します。あなたは自分自身に対して要素を比較する必要がないと仮定すると、あなただけの各ペアの一方向の周りではなく、両方の方法をテストする必要があります。

for (int i = 1; i < ints.length; ++i) { 
    for (int j = 0; j < i; ++j) { 
     match(ints[i], ints[j]); 
    } 
} 

あなたは両方の方法ですべてのペアをしたい場合は、単にj < ints.lengthj < iを変更します。自己比較を除いて両方向のペアを使用する場合は、内部ループにif (i != j)を追加するか、または0からi-1までの1つの内側ループを実行し、もう1つをi+1からints.lengthに追加します。

+0

Steveさん、多次元配列に対してのみネストループを使用していましたが、これを完全に除外しました。 – lisak

関連する問題