lemon/euler.h
changeset 2429 fd51b552bcf2
parent 2405 57586d25f415
child 2445 aaf5787f4d5d
equal deleted inserted replaced
13:d588b1414571 14:8d2db9cf448b
    18 
    18 
    19 #include<lemon/bits/invalid.h>
    19 #include<lemon/bits/invalid.h>
    20 #include<lemon/topology.h>
    20 #include<lemon/topology.h>
    21 #include <list>
    21 #include <list>
    22 
    22 
    23 /// \ingroup topology
    23 /// \ingroup graph_prop
    24 /// \file
    24 /// \file
    25 /// \brief Euler tour
    25 /// \brief Euler tour
    26 ///
    26 ///
    27 ///This file provides an Euler tour iterator and ways to check
    27 ///This file provides an Euler tour iterator and ways to check
    28 ///if a graph is euler.
    28 ///if a graph is euler.
    30 
    30 
    31 namespace lemon {
    31 namespace lemon {
    32 
    32 
    33   ///Euler iterator for directed graphs.
    33   ///Euler iterator for directed graphs.
    34 
    34 
    35   /// \ingroup topology
    35   /// \ingroup graph_prop
    36   ///This iterator converts to the \c Edge type of the graph and using
    36   ///This iterator converts to the \c Edge type of the graph and using
    37   ///operator ++ it provides an Euler tour of a \e directed
    37   ///operator ++ it provides an Euler tour of a \e directed
    38   ///graph (if there exists).
    38   ///graph (if there exists).
    39   ///
    39   ///
    40   ///For example
    40   ///For example
   118     }
   118     }
   119   };
   119   };
   120 
   120 
   121   ///Euler iterator for undirected graphs.
   121   ///Euler iterator for undirected graphs.
   122 
   122 
   123   /// \ingroup topology
   123   /// \ingroup graph_prop
   124   ///This iterator converts to the \c Edge (or \c UEdge)
   124   ///This iterator converts to the \c Edge (or \c UEdge)
   125   ///type of the graph and using
   125   ///type of the graph and using
   126   ///operator ++ it provides an Euler tour of an undirected
   126   ///operator ++ it provides an Euler tour of an undirected
   127   ///graph (if there exists).
   127   ///graph (if there exists).
   128   ///
   128   ///
   216   };
   216   };
   217 
   217 
   218 
   218 
   219   ///Checks if the graph is Euler
   219   ///Checks if the graph is Euler
   220 
   220 
   221   /// \ingroup topology
   221   /// \ingroup graph_prop
   222   ///Checks if the graph is Euler. It works for both directed and
   222   ///Checks if the graph is Euler. It works for both directed and
   223   ///undirected graphs.
   223   ///undirected graphs.
   224   ///\note By definition, a directed graph is called \e Euler if
   224   ///\note By definition, a directed graph is called \e Euler if
   225   ///and only if connected and the number of it is incoming and outgoing edges
   225   ///and only if connected and the number of it is incoming and outgoing edges
   226   ///are the same for each node.
   226   ///are the same for each node.