pub struct ExpanderComponent {
pub id: usize,
pub vertices: HashSet<VertexId>,
pub conductance: Conductance,
pub level: usize,
pub boundary_edges: Vec<EdgeId>,
pub volume: f64,
}Expand description
A component in the expander decomposition
Each component represents a high-expansion subgraph
Fields§
§id: usizeComponent ID
vertices: HashSet<VertexId>Vertices in this component
conductance: ConductanceConductance of this component
level: usizeLevel in the hierarchy (0 = finest, higher = coarser)
boundary_edges: Vec<EdgeId>Inter-component edges (boundary edges)
volume: f64Volume (sum of degrees) of this component
Implementations§
Trait Implementations§
Source§impl Clone for ExpanderComponent
impl Clone for ExpanderComponent
Source§fn clone(&self) -> ExpanderComponent
fn clone(&self) -> ExpanderComponent
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ExpanderComponent
impl RefUnwindSafe for ExpanderComponent
impl Send for ExpanderComponent
impl Sync for ExpanderComponent
impl Unpin for ExpanderComponent
impl UnwindSafe for ExpanderComponent
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 more