[][src]Trait peroxide::structure::vector::Algorithm

pub trait Algorithm {
    fn rank(&self) -> Vec<usize>;
fn sign(&self) -> f64;
fn arg_max(&self) -> usize; }

Some algorithms for Vector

Required methods

fn rank(&self) -> Vec<usize>

fn sign(&self) -> f64

fn arg_max(&self) -> usize

Loading content...

Implementors

impl Algorithm for Vector[src]

fn rank(&self) -> Vec<usize>[src]

Assign rank

Examples

extern crate peroxide;
use peroxide::*;

let v = c!(7, 5, 9, 2, 8);
assert_eq!(v.rank(), vec![2,3,0,4,1]);

fn sign(&self) -> f64[src]

Sign of Permutation

Examples

extern crate peroxide;
use peroxide::*;

let a = c!(1,0,2);
let b = c!(1,2,0);
let c = c!(0,1,2);

assert_eq!((a.sign(), b.sign(), c.sign()), (-1f64, 1f64, 1f64));

fn arg_max(&self) -> usize[src]

arg max

Examples

extern crate peroxide;
use peroxide::*;

let v = c!(1,3,2,4,3,7);
assert_eq!(v.arg_max(),5);

let v2 = c!(1,3,2,5,6,6);
assert_eq!(v2.arg_max(),4);
Loading content...