1#ifndef ROUTING_KIT_GRAPH_UTIL_H
2#define ROUTING_KIT_GRAPH_UTIL_H
8std::vector<unsigned>
convert_node_path_to_arc_path(
const std::vector<unsigned>&first_out,
const std::vector<unsigned>&head, std::vector<unsigned>path);
11unsigned find_arc(
const std::vector<unsigned>&first_out,
const std::vector<unsigned>&head,
unsigned x,
unsigned y);
12unsigned find_arc_or_return_invalid(
const std::vector<unsigned>&first_out,
const std::vector<unsigned>&head,
unsigned x,
unsigned y);
14unsigned find_arc_given_sorted_head(
const std::vector<unsigned>&first_out,
const std::vector<unsigned>&head,
unsigned x,
unsigned y);
21 const std::vector<unsigned>&a,
23 const std::vector<unsigned>&b
28 const std::vector<unsigned>&a,
30 const std::vector<unsigned>&b
36 std::vector<unsigned>&a,
38 const std::vector<unsigned>&b
44 const std::vector<unsigned>&
tail,
45 const std::vector<unsigned>&head
50 const std::vector<unsigned>&
tail,
51 const std::vector<unsigned>&head
56 std::vector<unsigned>&
tail,
57 const std::vector<unsigned>&head
62 std::vector<unsigned>&
tail,
63 const std::vector<unsigned>&head
std::vector< unsigned > tail
std::vector< unsigned > compute_inverse_sort_permutation_first_by_tail_then_by_head(unsigned node_count, const std::vector< unsigned > &tail, const std::vector< unsigned > &head)
unsigned find_arc_given_sorted_head(const std::vector< unsigned > &first_out, const std::vector< unsigned > &head, unsigned x, unsigned y)
std::vector< unsigned > compute_sort_permutation_first_by_tail_then_by_head_and_apply_sort_to_tail(unsigned node_count, std::vector< unsigned > &tail, const std::vector< unsigned > &head)
unsigned find_arc(const std::vector< unsigned > &first_out, const std::vector< unsigned > &head, unsigned x, unsigned y)
std::vector< unsigned > compute_inverse_sort_permutation_first_by_tail_then_by_head_and_apply_sort_to_tail(unsigned node_count, std::vector< unsigned > &tail, const std::vector< unsigned > &head)
std::vector< unsigned > compute_inverse_sort_permutation_first_by_left_then_by_right(unsigned a_count, const std::vector< unsigned > &a, unsigned b_count, const std::vector< unsigned > &b)
std::vector< unsigned > compute_sort_permutation_first_by_tail_then_by_head(unsigned node_count, const std::vector< unsigned > &tail, const std::vector< unsigned > &head)
std::vector< unsigned > compute_sort_permutation_first_by_left_then_by_right(unsigned a_count, const std::vector< unsigned > &a, unsigned b_count, const std::vector< unsigned > &b)
unsigned find_arc_or_return_invalid_given_sorted_head(const std::vector< unsigned > &first_out, const std::vector< unsigned > &head, unsigned x, unsigned y)
std::vector< unsigned > convert_node_path_to_arc_path(const std::vector< unsigned > &first_out, const std::vector< unsigned > &head, std::vector< unsigned >path)
std::vector< unsigned > convert_arc_path_to_node_path(unsigned source, const std::vector< unsigned > &head, std::vector< unsigned >path)
std::vector< unsigned > compute_inverse_sort_permutation_first_by_left_then_by_right_and_apply_sort_to_left(unsigned a_count, std::vector< unsigned > &a, unsigned b_count, const std::vector< unsigned > &b)
unsigned find_arc_or_return_invalid(const std::vector< unsigned > &first_out, const std::vector< unsigned > &head, unsigned x, unsigned y)