AlgoPlus v0.1.0
Loading...
Searching...
No Matches
best_first< T > Class Template Reference

best first class More...

#include <best_first.h>

Public Member Functions

 best_first (std::unordered_map< T, std::vector< std::pair< T, double > > > v={}, std::unordered_map< T, double > nodes={})
 best_first constructor
 
void insert_node (T u, double val)
 insert_node function
 
bool has_edge (T u, T v)
 has_edge function
 
void add_edge (T u, T v)
 add_edge function
 
bool search (T start, T end)
 search function
 

Detailed Description

template<typename T>
class best_first< T >

best first class

Constructor & Destructor Documentation

◆ best_first()

template<typename T>
best_first< T >::best_first ( std::unordered_map< T, std::vector< std::pair< T, double > > > v = {},
std::unordered_map< T, double > nodes = {} )
inlineexplicit

best_first constructor

Parameters
vunordered_map<T, vector<pair<T, double> > > initializer adjacency list. Default = {}
nodesunordered_map<T, double> : contains the heuristic value of each node. Default = {}

Member Function Documentation

◆ add_edge()

template<typename T>
void best_first< T >::add_edge ( T u,
T v )
inline

add_edge function

Parameters
uthe first node
vthe second node

◆ has_edge()

template<typename T>
bool best_first< T >::has_edge ( T u,
T v )
inline

has_edge function

Parameters
uthe first node
vthe second node
Returns
true if there exist an edge between u and v
false otherwise

◆ insert_node()

template<typename T>
void best_first< T >::insert_node ( T u,
double val )
inline

insert_node function

Parameters
uthe node ID
valthe heuristic value of node u

◆ search()

template<typename T>
bool best_first< T >::search ( T start,
T end )
inline

search function

Parameters
startstarting node
endend node
Returns
true if search found the end node.
false otherwise

The documentation for this class was generated from the following file: