encode

Function encode 

Source
pub fn encode<T: Ord>(xs: &[T]) -> usize
Expand description

Returns the value of a multiset permutation.

The returned value can be decoded with decode to get back xs.

let mut ys = xs.to_vec();
ys.sort();
let p = encode(xs);
assert_eq!(decode(&ys, p), xs);

ยงExamples

assert_eq!(encode(&[0, 0, 1]), 0);
assert_eq!(encode(&[0, 1, 0]), 1);
assert_eq!(encode(&[1, 0, 0]), 2);