The tutorial introduces the most important data structures and algorithms of LEDA slowly one by one, in sections building on each other. It divides roughly in its chapters by “large” topics like “priority queues”, “graphs” etc., and finely in its sections by the individual classes from the respective topic. LEDA as a whole consists of these classes. “LEDA est omnis divisa in eas classes.”
Every section first gives a general description of the data structure and its use with a vivid example. When required, this knowledge can be deepened in every standard reference on data structures and algorithms. Then one or more example programs focussing on the appropriate LEDA class follow with concrete, practice relevant problem definitions. The use of the class interface is described in detail after. Tips for the use of the class and helpful references follow. Details of the implementation are not described; these can be looked up in LEDA, A Platform for Combinatorial and Geometric Computing if one is interested. Exercises suited to the contents of the respective section top off this section and deepen the the material just learned.
The individual sections themselves are built up around small code examples, which each have one data structure or one algorithm of LEDA as the central topic. They always try to show the use of the respective structure or the respective algorithm in the solution a of problem definition of practical relevance as challenging as possible. The code examples are kept so simple that the look at the essential, that is the use of the structure or the algorithm, is not covered up. The reader shall be enabled as fast as possible to reuse LEDA constituents in applications of his own.
All the program examples are self-contained, complete C++ programs, which can be compiled and executed provided that a LEDA installation is available. The reader, of course, is encouraged to actually do this and to play with the introduced code. The source texts can be taken from the online version of the tutorial by copy & paste or be obtained from the download area of the tutorial.
The tutorial contains five chapters until now (only the first two of which are translated from German to English at the present time). However, the size of the LEDA system justifies at least another four chapters, making a total of 9 chapters in the end version. The complete contents planned are:
The first chapter describes the installation of LEDA and how LEDA programs are made to run. It has to be read if a LEDA installation is not available and shall be carried out, or if the reader has never written a LEDA program before and therefore does not know what he must pay attention to when coding, translating and linking.
It is absolutely vital to read the second chapter. It represents the basis for all further chapters. Therein, the individual sections build up on each other.
The further chapters can be read independently of each other in an arbitrary order. Every chapter should, however, be completely read from the front to behind because occasionally, programs introduced in later sections take advantage of classes which have been described in earlier sections.
Program texts and code quoted from a program text are set in a font of fixed size.
User keyboard inputs are set in this font.
Screen output appears in this font.
This tutorial also will be available as a printed book in trade. At present, a publication date is not yet certain.
Every reader who makes a contribution to this work, however marginal it may be, will be mentioned by name in the acknowledgement!
The source texts of all programs and all example files can be downloaded in the download area of the tutorial.