pub struct NetworkFlowAdjacencyList {
pub source: usize,
pub sink: usize,
/* private fields */
}
Fields§
§source: usize
§sink: usize
Implementations§
Source§impl NetworkFlowAdjacencyList
impl NetworkFlowAdjacencyList
pub fn ford_fulkerson(&mut self) -> i32
Source§impl NetworkFlowAdjacencyList
impl NetworkFlowAdjacencyList
Sourcepub fn with_size(n: usize) -> Self
pub fn with_size(n: usize) -> Self
Initialize an empty adjacency list that can hold up to n nodes.
pub fn and_source_sink(self, source: usize, sink: usize) -> Self
pub fn is_empty(&self) -> bool
pub fn add_edge(&mut self, from: usize, to: usize, capacity: i32)
pub fn add_edge_with_cost( &mut self, from: usize, to: usize, capacity: i32, cost: i32, )
pub fn from_edges(size: usize, edges: &[(usize, usize, i32)]) -> Self
pub fn from_edges_with_cost( size: usize, edges: &[(usize, usize, i32, i32)], ) -> Self
pub fn edges(&self) -> impl Iterator<Item = (usize, &Rc<RefCell<Edge>>)>
pub fn edge_count(&self) -> usize
pub fn nodes(&self) -> impl Iterator<Item = (usize, &Vec<Rc<RefCell<Edge>>>)>
pub fn node_count(&self) -> usize
Trait Implementations§
Source§impl Debug for NetworkFlowAdjacencyList
impl Debug for NetworkFlowAdjacencyList
Source§impl Index<usize> for NetworkFlowAdjacencyList
impl Index<usize> for NetworkFlowAdjacencyList
Auto Trait Implementations§
impl Freeze for NetworkFlowAdjacencyList
impl !RefUnwindSafe for NetworkFlowAdjacencyList
impl !Send for NetworkFlowAdjacencyList
impl !Sync for NetworkFlowAdjacencyList
impl Unpin for NetworkFlowAdjacencyList
impl !UnwindSafe for NetworkFlowAdjacencyList
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