![]() |
Home | Libraries | People | FAQ | More |
template<class RandomAccessRange> RandomAccessRange& random_shuffle(RandomAccessRange& rng); template<class RandomAccessRange> const RandomAccessRange& random_shuffle(const RandomAccessRange& rng); template<class RandomAccessRange, class Generator> RandomAccessRange& random_shuffle(RandomAccessRange& rng, Generator& gen); template<class RandomAccessRange, class Generator> const RandomAccessRange& random_shuffle(const RandomAccessRange& rng, Generator& gen);
random_shuffle
randomly
rearranges the elements in rng
.
The versions of random_shuffle
that do not specify a Generator
use an internal random number generator. The versions of random_shuffle
that do specify a Generator
use this instead. Returns
the shuffles range.
Defined in the header file boost/range/algorithm/random_shuffle.hpp
For the version without a Generator:
RandomAccessRange
is a model of the Random
Access Range Concept.
For the version with a Generator:
RandomAccessRange
is a model of the Random
Access Range Concept.
Generator
is a model
of the RandomNumberGeneratorConcept
.
RandomAccessRange
's
distance type is convertible to Generator
's
argument type.
distance(rng)
is less than gen
's
maximum value.
Linear. If !empty(rng)
, exactly distance(rng) - 1
swaps are performed.