Module seq

Source
Expand description

Sequence-related functionality

This module provides:

  • IndexedRandom for sampling slices and other indexable lists
  • IndexedMutRandom for sampling slices and other mutably indexable lists
  • SliceRandom for mutating slices
  • IteratorRandom for sampling iterators
  • [index::sample] low-level API to choose multiple indices from 0..length

Also see:

  • [crate::distr::weighted::WeightedIndex] distribution which provides weighted index sampling.

In order to make results reproducible across 32-64 bit architectures, all usize indices are sampled as a u32 where possible (also providing a small performance boost in some cases).

Modules§

index
Low-level API for sampling indices

Traits§

IndexedMutRandom
Extension trait on indexable lists, providing random sampling methods.
IndexedRandom
Extension trait on indexable lists, providing random sampling methods.
IteratorRandom
Extension trait on iterators, providing random sampling methods.
SliceRandom
Extension trait on slices, providing shuffling methods.