# HG changeset patch # User athos # Date 1109067812 0 # Node ID 66400041ef2acde85c35645f1095d7b8418cb33d # Parent ccbca6ba8b59669124371a99057827b34e6c440f Corrected spelling errors. diff -r ccbca6ba8b59 -r 66400041ef2a doc/graphs.dox --- a/doc/graphs.dox Tue Feb 22 10:23:08 2005 +0000 +++ b/doc/graphs.dox Tue Feb 22 10:23:32 2005 +0000 @@ -5,34 +5,33 @@ The primary data structures of LEMON are the graph classes. They all provide a node list - edge list interface, i.e. they have functionalities to list the nodes and the edges of the graph as well -as in incoming and outgoing edges of a given node. +as incoming and outgoing edges of a given node. Each graph should meet the \ref lemon::concept::StaticGraph "StaticGraph" concept. This concept does not -makes it possible to change the graph (i.e. it is not possible to add +make it possible to change the graph (i.e. it is not possible to add or delete edges or nodes). Most of the graph algorithms will run on these graphs. The graphs meeting the \ref lemon::concept::ExtendableGraph "ExtendableGraph" concept allow node and -edge addition. You can also "clear" (i.e. erase all edges and nodes) -such a graph. +edge addition. You can also "clear" such a graph (i.e. erase all edges and nodes ). In case of graphs meeting the full feature \ref lemon::concept::ErasableGraph "ErasableGraph" concept -you can also erase individual edges and node in arbitrary order. +you can also erase individual edges and nodes in arbitrary order. The implemented graph structures are the following. \li \ref lemon::ListGraph "ListGraph" is the most versatile graph class. It meets the \ref lemon::concept::ErasableGraph "ErasableGraph" concept -and it also have some convenience features. +and it also has some convenient extra features. \li \ref lemon::SmartGraph "SmartGraph" is a more memory efficient version of \ref lemon::ListGraph "ListGraph". The -price of it is that it only meets the +price of this is that it only meets the \ref lemon::concept::ExtendableGraph "ExtendableGraph" concept, so you cannot delete individual edges or nodes. \li \ref lemon::SymListGraph "SymListGraph" and @@ -45,7 +44,7 @@ attach data to the edges in such a way that the stored data are shared by the edge pairs. \li \ref lemon::FullGraph "FullGraph" -implements a full graph. It is a \ref lemon::concept::StaticGraph, so you cannot +implements a complete graph. It is a \ref lemon::concept::StaticGraph, so you cannot change the number of nodes once it is constructed. It is extremely memory efficient: it uses constant amount of memory independently from the number of the nodes of the graph. Of course, the size of the \ref maps-page "NodeMap"'s and @@ -60,7 +59,7 @@ \todo Don't we need SmartNodeSet and SmartEdgeSet? \todo Some cross-refs are wrong. -The graph structures itself can not store data attached +The graph structures themselves can not store data attached to the edges and nodes. However they all provide \ref maps-page "map classes" to dynamically attach data the to graph components. @@ -100,8 +99,8 @@ if (i != j) g.addEdge(i, j); \endcode -After some convenience typedefs we create a graph and add three nodes to it. -Then we add edges to it to form a full graph. +After some convenient typedefs we create a graph and add three nodes to it. +Then we add edges to it to form a complete graph. \code std::cout << "Nodes:"; @@ -133,8 +132,9 @@ Edges: (0,2) (1,2) (0,1) (2,1) (1,0) (2,0) \endcode -We can also iterate through all edges of the graph very similarly. The target and -source member functions can be used to access the endpoints of an edge. +We can also iterate through all edges of the graph very similarly. The +\c target and +\c source member functions can be used to access the endpoints of an edge. \code NodeIt first_node(g); @@ -185,7 +185,7 @@ concepts that allow us to attach containers to graphs. These containers are called maps. -In the example above we create an EdgeMap which assigns an int value to all +In the example above we create an EdgeMap which assigns an integer value to all edges of the graph. We use the set member function of the map to write values into the map and the operator[] to retrieve them.