Generic Instance Method


Returns the elements of the sequence, shuffled using the given generator as a source for randomness.


func shuffled<T>(using generator: inout T) -> [(offset: Int, element: Base.Element)] where T : RandomNumberGenerator



The random number generator to use when shuffling the sequence.

Return Value

An array of this sequence’s elements in a shuffled order.


You use this method to randomize the elements of a sequence when you are using a custom random number generator. For example, you can shuffle the numbers between 0 and 9 by calling the shuffled(using:) method on that range:

let numbers = 0...9
let shuffledNumbers = numbers.shuffled(using: &myGenerator)
// shuffledNumbers == [8, 9, 4, 3, 2, 6, 7, 0, 5, 1]

Complexity: O(n), where n is the length of the sequence.