7 /** |
7 /** |
8 @defgroup graphs Graph Structures |
8 @defgroup graphs Graph Structures |
9 @ingroup datas |
9 @ingroup datas |
10 \brief Graph structures implemented in LEMON. |
10 \brief Graph structures implemented in LEMON. |
11 |
11 |
12 LEMON provides several data structures to meet the diverging requirements |
12 The implementation of combinatorial algorithms heavily relies on |
13 of the possible users. |
13 efficient graph implementations. LEMON offers data structures which are |
14 In order to save on running time or on memory usage, some structures may |
14 planned to be easily used in an experimental phase of implementation studies, |
15 fail to provide |
15 and thereafter the program code can be made efficient by small modifications. |
16 some graph features like edge or node deletion. |
|
17 |
16 |
18 LEMON also offers special graphs that cannot be used alone but only |
17 The most efficient implementation of diverse applications require the usage of different physical graph implementations. These differences appear in the size of |
19 in conjunction with other graph representation. The examples for this are |
18 graph we require to handle, memory or time usage limitations or in |
20 \ref lemon::EdgeSet "EdgeSet", \ref lemon::NodeSet "NodeSet" |
19 the set of operations through which the graph can be accessed. |
21 and the large variety of \ref gwrappers "graph wrappers". |
20 LEMON provides several physical graph structures to meet the |
|
21 diverging requirements of the possible users. |
|
22 In order to save on running time or on memory usage, some structures may |
|
23 fail to provide some graph features like edge or node deletion. |
|
24 |
|
25 Alteration of standard containers need a very limited number of |
|
26 operations, these together satisfy the everyday requirements. |
|
27 In the case of graph strutures, different operations are needed which do |
|
28 not alter the physical graph, but gives an other view. If some nodes or |
|
29 edges have to be hidden or the reverse oriented graph have to be used, then |
|
30 this is the case. It also may happen that in a flow implemenation |
|
31 the residual graph can be accessed by an other algorithm, or a node-set |
|
32 is to be shrunk for an other algorithm. |
|
33 LEMON also provides a variety of graphs for these requirements called |
|
34 \ref gwrappers "graph wrappers". Wrappers cannot be used alone but only |
|
35 in conjunction with other graph representation. |
22 |
36 |
23 You are free to use the graph structure that fit your requirements |
37 You are free to use the graph structure that fit your requirements |
24 the best, most graph algorithms and auxiliary data structures can be used |
38 the best, most graph algorithms and auxiliary data structures can be used |
25 with any graph structures. |
39 with any graph structures. |
26 */ |
40 */ |
27 |
41 |
28 /** |
42 /** |
29 @defgroup maps Maps |
43 @defgroup maps Maps |
30 @ingroup datas |
44 @ingroup datas |
48 @ingroup auxdat |
62 @ingroup auxdat |
49 \brief Tools to Make It Easier to Make Graph Maps. |
63 \brief Tools to Make It Easier to Make Graph Maps. |
50 |
64 |
51 This group describes the tools that makes it easier to make graph maps that |
65 This group describes the tools that makes it easier to make graph maps that |
52 dynamically update with the graph changes. |
66 dynamically update with the graph changes. |
53 */ |
|
54 |
|
55 /** |
|
56 @defgroup gwrappers Wrapper Classes for Graphs |
|
57 \brief This group contains several wrapper classes for graphs |
|
58 @ingroup graphs |
|
59 */ |
67 */ |
60 |
68 |
61 /** |
69 /** |
62 @defgroup galgs Graph Algorithms |
70 @defgroup galgs Graph Algorithms |
63 \brief This group describes the several graph algorithms |
71 \brief This group describes the several graph algorithms |