ホームページ > Java > &#&チュートリアル > Java HashSet または LinkedHashSet から要素をランダムに選択する方法

Java HashSet または LinkedHashSet から要素をランダムに選択する方法

DDD
リリース: 2024-10-30 01:59:28
オリジナル
287 人が閲覧しました

How to Randomly Select an Element from a Java HashSet or LinkedHashSet?

セットからのランダムな要素の選択

セットからランダムな項目を選択することは、さまざまなプログラミング シナリオで一般的な操作です。 Java は、HashSet や LinkedHashSet など、さまざまなタイプのセットを提供します。このタスクを効率的に実行する方法を見てみましょう。

HashSet および LinkedHashSet からランダムな要素を選択する

Java の HashSet および LinkedHashSet は、一意の要素を格納する便利な方法を提供します。これらのセットからランダムな要素を選択するには、次のアプローチに従います。

<code class="java">int size = myHashSet.size();
int item = new Random().nextInt(size); // Use a shared Random object in practice
int i = 0;
for (Object obj : myHashSet) {
    if (i == item)
        return obj;
    i++;
}</code>
ログイン後にコピー

この手法では、次の手順を利用します。

  1. セットのサイズ (サイズ) を決定します。
  2. 範囲 [0, size-1] 内のランダムな整数 (項目) を生成します。
  3. i 番目の要素を追跡しながら、設定された要素を反復処理します。
  4. If i はランダムに生成されたインデックス (項目) と一致し、現在の要素をランダムな選択として返します。

このアプローチでは、セットの順序を維持しながら、セットからランダムな要素を選択する際の均一な分散が保証されます。 LinkedHashSet.

以上がJava HashSet または LinkedHashSet から要素をランダムに選択する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート