COIN-OR::LEMON - Graph Library

Changeset 613:b5b5c4ae5107 in lemon-0.x


Ignore:
Timestamp:
05/11/04 19:37:34 (20 years ago)
Author:
marci
Branch:
default
Phase:
public
Convert:
svn:c9d7d8f5-90d6-0310-b91f-818b3a526b0e/lemon/trunk@796
Message:

documentation of bipartite matchings, cleaning

Location:
src/work
Files:
1 deleted
4 edited

Legend:

Unmodified
Added
Removed
  • src/work/Doxyfile

    r604 r613  
    401401                         marci/bfs_dfs.h \
    402402                         marci/bfs_dfs_misc.h \
    403                          jacint/graph_gen.h
     403                         jacint/graph_gen.h \
     404                         marci/max_bipartite_matching.h
    404405
    405406# If the value of the INPUT tag contains directories, you can use the
  • src/work/marci/bipartite_matching_try_3.cc

    r602 r613  
    132132  FOR_EACH_LOC(Graph::EdgeIt, e, g) gef.set(e, 0);
    133133  FOR_EACH_LOC(Graph::NodeIt, n, g) gnf.set(n, 0);
    134   MaxMatching<Graph, ConstMap<Graph::Edge, int>, ConstMap<Graph::Node, int>,
     134  MaxBipartiteMatching<Graph, ConstMap<Graph::Edge, int>, ConstMap<Graph::Node, int>,
    135135    Graph::EdgeMap<int>, Graph::NodeMap<int> >
    136136    matching_test(g, ge1, gn1, gef, gnf);
     
    147147  FOR_EACH_LOC(Graph::EdgeIt, e, g) gef.set(e, 0);
    148148  //FOR_EACH_LOC(Graph::NodeIt, n, g) gnf.set(n, 0);
    149   MaxMatching<Graph, ConstMap<Graph::Edge, int>, ConstMap<Graph::Node, int>,
     149  MaxBipartiteMatching<Graph, ConstMap<Graph::Edge, int>, ConstMap<Graph::Node, int>,
    150150    Graph::EdgeMap<int>, Graph::NodeMap<int> >
    151151    matching_test_1(g, ge1, gn1, gef/*, gnf*/);
  • src/work/marci/makefile

    r555 r613  
    55
    66LEDABINARIES = leda_graph_demo leda_bfs_dfs max_bipartite_matching_demo
    7 BINARIES = max_flow_demo iterator_bfs_demo macro_test lg_vs_sg bfsit_vs_byhand bipartite_graph_wrapper_test bipartite_matching_try bipartite_matching_try_2 bipartite_matching_try_3 top_sort_test
     7BINARIES = max_flow_demo iterator_bfs_demo macro_test lg_vs_sg bfsit_vs_byhand bipartite_graph_wrapper_test bipartite_matching_try bipartite_matching_try_3 top_sort_test
    88#gw_vs_not preflow_demo_boost edmonds_karp_demo_boost preflow_demo_jacint preflow_demo_athos edmonds_karp_demo_alpar preflow_demo_leda
    99
  • src/work/marci/max_bipartite_matching.h

    r559 r613  
    3434  // };
    3535
    36   /// A bipartite matching class.
     36  /// \brief A bipartite matching class.
     37  ///
    3738  /// This class reduces the matching problem to a flow problem and
    3839  /// a preflow is used on a wrapper. Such a generic approach means that
     
    4041  /// a similar way. Due to the efficiency of the preflow algorithm, an
    4142  /// efficient matching framework is obtained.
     43  /// \ingroup galgs
    4244  template <typename Graph, typename EdgeCap, typename NodeCap,
    4345            typename EdgeFlow, typename NodeFlow>
    44   class MaxMatching {
     46  class MaxBipartiteMatching {
    4547  protected:
    4648    //   EdgeCap* edge_cap;
     
    6668    ///\bug Note that the values in _edge_flow and _node_flow have
    6769    /// to form a flow.
    68     MaxMatching(Graph& _g, EdgeCap& _edge_cap, NodeCap& _node_cap,
     70    MaxBipartiteMatching(Graph& _g, EdgeCap& _edge_cap, NodeCap& _node_cap,
    6971                EdgeFlow& _edge_flow, NodeFlow& _node_flow) :
    7072      stgw(_g),
     
    7779    ///\bug Note that the values in _edge_flow and _node_flow have
    7880    /// to form a flow.
    79     MaxMatching(Graph& _g, EdgeCap& _edge_cap, NodeCap& _node_cap,
     81    MaxBipartiteMatching(Graph& _g, EdgeCap& _edge_cap, NodeCap& _node_cap,
    8082                EdgeFlow& _edge_flow/*, NodeFlow& _node_flow*/) :
    8183      stgw(_g),
     
    8587      mf(stgw, stgw.S_NODE, stgw.T_NODE, cap, flow) { }
    8688    /// The class have a nontrivial destructor.
    87     ~MaxMatching() { if (node_flow) delete node_flow; }
     89    ~MaxBipartiteMatching() { if (node_flow) delete node_flow; }
    8890    /// run computes the max matching.
    8991    void run() { mf.run(); }
Note: See TracChangeset for help on using the changeset viewer.