Collections.Shuffle 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
多載
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
參數
- 屬性
備註
使用預設隨機來源隨機排列指定的清單。 所有排列都發生的可能性大致相等。
對沖「大約」用於上述描述中,因為默認隨機來源只是獨立選擇位的不偏不倚來源。 如果它是隨機選擇位的完美來源,則演算法會選擇具有完美統一性的排列。
這個實作會將清單往回周遊,從最後一個專案到第二個元素,重複地將隨機選取的項目交換至「目前位置」。 從從第一個元素執行到目前位置的清單部分隨機選取專案。
此方法會以線性時間執行。 如果指定的清單未實 RandomAccess
作 介面且很大,則此實作會將指定的清單傾印到陣列中,然後再將它洗牌,並將隨機數組傾印回清單中。 這可避免二次行為,因為已就地洗牌「循序存取」清單。
的 java.util.Collections.shuffle(java.util.List<?>)
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 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
參數
- rnd
- Random
要用來隨機清單的來源。
- 屬性
備註
使用指定的隨機來源隨機排列指定的清單。 假設隨機來源公平,所有排列都會以相等的可能性發生。
這個實作會將清單往回周遊,從最後一個專案到第二個元素,重複地將隨機選取的項目交換至「目前位置」。 從從第一個元素執行到目前位置的清單部分隨機選取專案。
此方法會以線性時間執行。 如果指定的清單未實 RandomAccess
作 介面且很大,則此實作會將指定的清單傾印到陣列中,然後再將它洗牌,並將隨機數組傾印回清單中。 這可避免二次行為,因為已就地洗牌「循序存取」清單。
的 java.util.Collections.shuffle(java.util.List<?>, java.util.Random)
Java 檔。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。