4
これを達成する方法があるのか、代替のデータ構造があるのか疑問に思っていました。それは、重複なしでソートされ、イテレータを持たなければならない。イテレータを使用してツリーセットの次の要素を調べる
これを達成する方法があるのか、代替のデータ構造があるのか疑問に思っていました。それは、重複なしでソートされ、イテレータを持たなければならない。イテレータを使用してツリーセットの次の要素を調べる
TreeSet
はiterator
であり、ソートされ、重複はなく、higher
を使用して次の上位要素を見ることができます。例えば
:
TreeSet<Integer> ts = new TreeSet<Integer>();
ts.add(1);
ts.add(4);
ts.add(4);
ts.add(3);
for (Integer i : ts) {
System.out.println("current: " + i + " next: " + ts.higher(i));
}
出力は次のようになります。)(
current: 1 next: 3
current: 3 next: 4
current: 4 next: null
高いです!良い発見(または記憶)!私はListIterator for Setsのようなものを探し回っていました。 –
これは見つかった - 前にTreeSetを使用していない - これらのAPI仕様は便利だ:) – coobird
ありがとう、私はより高いことを忘れていた。私はそれを行う唯一の方法であるように私はメモリ内の現在の要素を維持する必要がありますね。 –