pub struct BFS;Expand description
Breadth-First Search for unweighted shortest paths
Use when all edges have equal weight (or you only care about hop count). Time: O(V + E), Space: O(V)
Implementations§
Source§impl BFS
impl BFS
Sourcepub fn shortest_path(
graph: &GraphStore,
source: &str,
target: &str,
) -> ShortestPathResult
pub fn shortest_path( graph: &GraphStore, source: &str, target: &str, ) -> ShortestPathResult
Find shortest path (by hop count) from source to target
Auto Trait Implementations§
impl Freeze for BFS
impl RefUnwindSafe for BFS
impl Send for BFS
impl Sync for BFS
impl Unpin for BFS
impl UnsafeUnpin for BFS
impl UnwindSafe for BFS
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request