#include <abstractBalanced.h>
Inheritance diagram for abstractBalancedFNW:
Public Member Functions | |
abstractBalancedFNW (TNode _n1=0, TArc _m1=0) throw () | |
virtual | ~abstractBalancedFNW () throw () |
unsigned long | Allocated () const throw () |
bool | IsBalanced () const throw () |
virtual void | Symmetrize ()=0 throw () |
virtual void | Relax ()=0 throw () |
TNode | N1 () const throw () |
TNode | ComplNode (TNode v) throw (ERRange) |
TArc | ComplArc (TArc a) throw (ERRange) |
void | InitCycles () throw () |
void | ReleaseCycles () throw () |
void | InitBlossoms () throw () |
void | ReleaseBlossoms () throw () |
TNode | Base (TNode v) throw (ERRange) |
TNode | Pred (TNode v) throw (ERRange) |
void | Bud (TNode v) throw (ERRange) |
void | Shrink (TNode u, TNode v) throw (ERRange) |
void | InitPartition () throw () |
void | ReleasePartition () throw () |
void | Merge (TNode u, TNode v) throw (ERRange) |
TNode | Find (TNode v) throw (ERRange) |
void | InitProps () throw () |
void | ReleaseProps () throw () |
void | InitPetals () throw () |
void | ReleasePetals () throw () |
TFloat | FindBalCap (TArc *, TNode u, TNode v) throw (ERRange,ERRejected) |
virtual void | BalPush (TArc a, TFloat lambda)=0 throw (ERRange,ERRejected) |
virtual TFloat | BalFlow (TArc a) const =0 throw (ERRange,ERRejected) |
virtual TFloat | BalCap (TArc a) const throw (ERRange,ERRejected) |
void | BalAugment (TArc *, TNode, TNode, TFloat) throw (ERRange,ERRejected) |
void | CancelEven () throw () |
void | MakeIntegral (TArc *, TNode, TNode) throw (ERRange) |
TFloat | MaxBalFlow (TNode s) throw (ERRange) |
TFloat | Anstee (TNode s) throw (ERRange) |
virtual TFloat | CancelOdd () throw () |
TFloat | MicaliVazirani (TNode s, TNode t=NoNode) throw (ERRange) |
TFloat | BNSAndAugment (TNode s) throw (ERRange) |
TFloat | BalancedScaling (TNode s) throw (ERRange) |
bool | BNS (TNode s, TNode t=NoNode) throw (ERRange,ERRejected) |
void | Expand (TNode *dist, TArc *, TNode, TNode) throw (ERRange) |
void | CoExpand (TNode *dist, TArc *, TNode, TNode) throw (ERRange) |
bool | BNSKocayStone (TNode s, TNode t=NoNode) throw (ERRange) |
bool | BNSKamedaMunro (TNode s, TNode t=NoNode) throw (ERRange) |
bool | BNSHeuristicsBF (TNode s, TNode t=NoNode) throw (ERRange) |
bool | BNSMicaliVazirani (TNode s, TNode t=NoNode) throw (ERRange) |
TFloat | MinCBalFlow (TNode s) throw (ERRange,ERRejected) |
TFloat | PrimalDual (TNode s) throw (ERRange,ERRejected) |
TFloat | EnhancedPD (TNode s) throw (ERRange,ERRejected) |
TFloat | CancelPD () throw () |
Protected Attributes | |
TNode | n1 |
TArc * | Q |
TArc * | prop |
TArc * | petal |
TNode * | base |
|
|
|
|
|
Reimplemented from abstractDiGraph. Reimplemented in balancedFNW, balancedToBalanced, graphToBalanced, and surfaceGraph. |
|
|
|
|
|
|
|
|
|
Implemented in balancedFNW, balancedToBalanced, graphToBalanced, and surfaceGraph. |
|
Implemented in balancedFNW, balancedToBalanced, graphToBalanced, and surfaceGraph. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Start a single node set.
Reimplemented from abstractMixedGraph. |
|
|
|
Reimplemented in graphToBalanced. |
|
|
|
|
|
|
|
|
|
|
|
|
|
Retrieve the set containing a given node.
In order to check if two nodes x,y are in the same set, it is sufficient to evaluate Find(x)==Find(y) and Find(u)!=NoNode. If the context parameter methDSU is set, Find() does not only lookup the canonical element, but also performs some path compression to reduce the future lookup times. Reimplemented from abstractMixedGraph. |
|
|
|
|
|
|
|
Initialize the disjoint node set structure. If not already present, the disjoint node set structure is allocated. After this operation, it is Find(v)==NoNode for every node v. Reimplemented from abstractMixedGraph. |
|
|
|
|
|
Query if this a balanced graph object.
Reimplemented from abstractMixedGraph. |
|
|
|
|
|
Merge two disjoint node sets represented by arbitrary members.
Reimplemented from abstractMixedGraph. |
|
|
|
|
|
|
|
|
|
|
|
Implemented in balancedFNW, balancedToBalanced, graphToBalanced, and surfaceGraph. |
|
|
|
|
|
Release the disjoint set structure. After this operation, it is Find(v)==v for every node v, and the disjoint node set structure is deallocated. Reimplemented from abstractMixedGraph. |
|
|
|
|
|
|
|
Implemented in balancedFNW, balancedToBalanced, graphToBalanced, and surfaceGraph. |
|
An array of blossom bases.
|
|
Number of outer nodes.
|
|
An array of node petals.
|
|
An array of node props.
|
|
An array for encoding of odd cycles.
|