4

一連の整数(別のArrayListのインデックスを表す)を含むArrayListがあります。

それぞれのユニークなペアを抽出する必要があります。

ArrayList = 1,4,5,7

私は欲しい:

1:4
1:5
1:7
4:5
4:7
5:7

これを達成するための最も簡単な方法は何ですか?

4

4 に答える 4

7

一意のフィルタリングのためにリストを変換しSetて元に戻すList

for(int i = 0 ; i < list.size(); i ++){
  for(int j = i+1 ; j < list.size(); j ++){
    System.out.println(list.get(i) + "," + .list.get(j))    
  }
}
于 2012-06-14T14:50:03.930 に答える
0

一方向の関係を持つグラフ構造を使用することは、この問題に適しているのでしょうか。

単純な順列よりもはるかに手間がかかりますが、おそらく実装するほうが興味深いでしょう。特にペアの数が多い場合。

于 2012-06-14T14:54:06.640 に答える
0

最初の要素のすべての可能な選択肢をループします。それらのそれぞれについて、2番目の可能なすべての選択肢をループします。

重複を見つける部分はあなたに任せます(ヒント: a を使用してくださいSet)。

于 2012-06-14T14:50:12.213 に答える
0

2 つのインデックスを使用できます。1 つは最初の部分用、もう 1 つは 2 番目の部分用です。次に、最初のフォームの最初から最後の要素まで反復し、内側のループで最初の要素の 1 つ前から最後まで 2 番目のフォームを反復処理します。

于 2012-06-14T14:50:27.383 に答える