次の方法で共有


Collections.Shuffle メソッド

定義

オーバーロード

Shuffle(IList<Object>)

既定のランダムなソースを使用して、指定したリストをランダムに並べ替えします。

Shuffle(IList<Object>, Random)

指定したランダムなソースを使用して、指定したリストをランダムにパーマムします。

Shuffle(IList<Object>)

既定のランダムなソースを使用して、指定したリストをランダムに並べ替えします。

[Android.Runtime.Register("shuffle", "(Ljava/util/List;)V", "")]
public static void Shuffle (System.Collections.Generic.IList<object> list);
[<Android.Runtime.Register("shuffle", "(Ljava/util/List;)V", "")>]
static member Shuffle : System.Collections.Generic.IList<obj> -> unit

パラメーター

list
IList<Object>

シャッフルするリスト。

属性

注釈

既定のランダムなソースを使用して、指定したリストをランダムに並べ替えします。 すべての順列は、ほぼ等しい確率で発生します。

前述の説明では、ランダム性の既定のソースは、独立して選択されたビットのほぼ偏りのないソースであるため、ヘッジ "概念" が使用されます。 ランダムに選択されたビットの完全なソースである場合、アルゴリズムは完全な均一性を持つ順列を選択します。

この実装では、最後の要素から 2 番目の要素まで、リストを後方に走査し、ランダムに選択された要素を "現在の位置" に繰り返しスワップします。 要素は、最初の要素から現在の位置まで実行されるリストの部分からランダムに選択されます。

このメソッドは線形時間で実行されます。 指定したリストがインターフェイスを RandomAccess 実装せず、大きい場合、この実装では、シャッフルする前に指定したリストを配列にダンプし、シャッフルされた配列をリストにダンプします。 これにより、"シーケンシャル アクセス" リストのシャッフルによって発生する 2 次動作が回避されます。

の Java ドキュメントjava.util.Collections.shuffle(java.util.List<?>)

このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。

適用対象

Shuffle(IList<Object>, Random)

指定したランダムなソースを使用して、指定したリストをランダムにパーマムします。

[Android.Runtime.Register("shuffle", "(Ljava/util/List;Ljava/util/Random;)V", "")]
public static void Shuffle (System.Collections.Generic.IList<object> list, Java.Util.Random rnd);
[<Android.Runtime.Register("shuffle", "(Ljava/util/List;Ljava/util/Random;)V", "")>]
static member Shuffle : System.Collections.Generic.IList<obj> * Java.Util.Random -> unit

パラメーター

list
IList<Object>

シャッフルするリスト。

rnd
Random

リストをシャッフルするために使用するランダム性のソース。

属性

注釈

指定したランダムなソースを使用して、指定したリストをランダムにパーマムします。 ランダム性のソースが公平であると仮定すると、すべての順列が等しい確率で発生します。

この実装では、最後の要素から 2 番目の要素まで、リストを後方に走査し、ランダムに選択された要素を "現在の位置" に繰り返しスワップします。 要素は、最初の要素から現在の位置まで実行されるリストの部分からランダムに選択されます。

このメソッドは線形時間で実行されます。 指定したリストがインターフェイスを RandomAccess 実装せず、大きい場合、この実装では、シャッフルする前に指定したリストを配列にダンプし、シャッフルされた配列をリストにダンプします。 これにより、"シーケンシャル アクセス" リストのシャッフルによって発生する 2 次動作が回避されます。

の Java ドキュメントjava.util.Collections.shuffle(java.util.List<?>, java.util.Random)

このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。

適用対象