Trait petgraph::visit::GetAdjacencyMatrix
[−]
[src]
pub trait GetAdjacencyMatrix: GraphBase { type AdjMatrix; fn adjacency_matrix(&self) -> Self::AdjMatrix; fn is_adjacent(
&self,
matrix: &Self::AdjMatrix,
a: Self::NodeId,
b: Self::NodeId
) -> bool; }
Create or access the adjacency matrix of a graph.
The implementor can either create an adjacency matrix, or it can return a placeholder if it has the needed representation internally.
Associated Types
type AdjMatrix
The associated adjacency matrix type
Required Methods
fn adjacency_matrix(&self) -> Self::AdjMatrix
Create the adjacency matrix
fn is_adjacent(
&self,
matrix: &Self::AdjMatrix,
a: Self::NodeId,
b: Self::NodeId
) -> bool
&self,
matrix: &Self::AdjMatrix,
a: Self::NodeId,
b: Self::NodeId
) -> bool
Return true if there is an edge from a
to b
, false otherwise.
Computes in O(1) time.
Implementors
impl<'a, G> GetAdjacencyMatrix for &'a G where
G: GetAdjacencyMatrix,impl<N, E, Ty> GetAdjacencyMatrix for GraphMap<N, E, Ty> where
N: Copy + Ord + Hash,
Ty: EdgeType,impl<'a, G> GetAdjacencyMatrix for Frozen<'a, G> where
G: GetAdjacencyMatrix,impl<N, E, Ty, Ix> GetAdjacencyMatrix for Graph<N, E, Ty, Ix> where
Ty: EdgeType,
Ix: IndexType,impl<N, E, Ty, Ix> GetAdjacencyMatrix for StableGraph<N, E, Ty, Ix> where
Ty: EdgeType,
Ix: IndexType,