pub use self::{bfs::BreadthFirstSearch, dfs::DepthFirstSearch};
mod bfs;
mod dfs;
use crate::{Contain, Graph, Node, Weight};
pub trait Searcher<N, V>: Contain<N>
where
N: Node,
V: Weight,
{
fn search(&mut self, graph: impl Graph<N, V>, start: N) -> Vec<N>;
fn reset(&mut self);
}