#include <routingkit/constants.h>
#include <vector>
#include <assert.h>
#include <algorithm>
Go to the source code of this file.
|
| template<class T > |
| std::vector< T > | RoutingKit::apply_inverse_permutation (const std::vector< unsigned > &p, const std::vector< T > &v) |
| |
| template<class T > |
| std::vector< T > | RoutingKit::apply_inverse_permutation (const std::vector< unsigned > &p, std::vector< T > &&v) |
| |
| template<class T > |
| std::vector< T > | RoutingKit::apply_permutation (const std::vector< unsigned > &p, const std::vector< T > &v) |
| |
| template<class T > |
| std::vector< T > | RoutingKit::apply_permutation (const std::vector< unsigned > &p, std::vector< T > &&v) |
| |
| std::vector< unsigned > | RoutingKit::apply_permutation_to_elements_of (const std::vector< unsigned > &p, const std::vector< unsigned > &v) |
| |
| std::vector< unsigned > | RoutingKit::apply_permutation_to_possibly_invalid_elements_of (const std::vector< unsigned > &p, const std::vector< unsigned > &v) |
| |
| std::vector< unsigned > | RoutingKit::chain_permutation_first_left_then_right (const std::vector< unsigned > &p, const std::vector< unsigned > &q) |
| |
| std::vector< unsigned > | RoutingKit::chain_permutation_first_right_then_left (const std::vector< unsigned > &p, const std::vector< unsigned > &q) |
| |
| std::vector< unsigned > | RoutingKit::identity_permutation (unsigned n) |
| |
| void | RoutingKit::inplace_apply_permutation_to_elements_of (const std::vector< unsigned > &p, std::vector< unsigned > &v) |
| |
| void | RoutingKit::inplace_apply_permutation_to_possibly_invalid_elements_of (const std::vector< unsigned > &p, std::vector< unsigned > &v) |
| |
| std::vector< unsigned > | RoutingKit::invert_permutation (const std::vector< unsigned > &p) |
| |
| bool | RoutingKit::is_permutation (const std::vector< unsigned > &p) |
| |
| template<class RandomGenerator > |
| std::vector< unsigned > | RoutingKit::random_permutation (unsigned n, RandomGenerator &&gen) |
| |