語言

Collections.Shuffle 方法

定義

多載

名稱 Description
Shuffle(IList<Object>, IRandomGenerator)
Shuffle(IList<Object>, Random)

利用指定的隨機來源隨機置換指定的清單。

Shuffle(IList<Object>)

利用預設的隨機來源隨機排列指定清單。

Shuffle(IList<Object>, IRandomGenerator)

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

參數

list
IList<Object>
屬性

適用於

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

隨機性的來源,用來洗牌。

屬性

備註

利用指定的隨機來源隨機置換指定的清單。 假設隨機來源是公平的,所有排列出現的機率相等。

此實作會從最後一個元素倒向排列到第二個,並反覆將隨機選取的元素切換到「當前位置」。 元素是從列表中從第一個元素到當前位置的部分隨機選取的。

此方法以線性時間運行。 若指定的清單未實作 RandomAccess 介面且介面容量較大,此實作會在洗牌前將指定清單傾倒到陣列中,再將洗牌後的陣列再傾倒回清單。 這避免了將「順序存取」清單重新排列所產生的二次行為。

Java 文件 java.util.Collections.shuffle(java.util.List<?>, java.util.Random)。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於

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>

待洗牌的名單。

屬性

備註

利用預設的隨機來源隨機排列指定清單。 所有排列的出現機率大致相等。

上述描述中使用「約略」一詞,是因為隨機的預設來源僅是近似且無偏且獨立選擇的位元來源。 如果它是隨機選取位元的完美來源,演算法會選擇具有完美均勻性的排列。

此實作會從最後一個元素倒向排列到第二個,並反覆將隨機選取的元素切換到「當前位置」。 元素是從列表中從第一個元素到當前位置的部分隨機選取的。

此方法以線性時間運行。 若指定的清單未實作 RandomAccess 介面且介面容量較大,此實作會在洗牌前將指定清單傾倒到陣列中,再將洗牌後的陣列再傾倒回清單。 這避免了將「順序存取」清單重新排列所產生的二次行為。

Java 文件 java.util.Collections.shuffle(java.util.List<?>)。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於