|
D A T A S T R U C T U R E S
|
Take a short tour through the
available (groups of) data types available in LEDA:
|
|
Simple Types
There are many simple data types that give you all the tools at
hand necessary to concentrate on your task without having to
take care of 'minor' problems. Strings, lists, stacks, random variables,
queues, sets, arrays, etc. And even better
- LEDA comes with many little useful somethings, such as pairs,
triples and quadruples, or like its own date class.
See the date
class as representative.
Look at the operations. That's all
you need! Instead of programming such functionality over and over
again, take advantage of a reliable and predefined implementation.
Number Types
If you intend to do things the right
way, the use of sophisticated number types is inevitable. LEDA has
its own arithmetic.
Others may come along with excuses,
LEDA does not. It provides what is necessary to do the job. LEDA
uses arbitrarily precise numeric data types. The correctness of the
results is always guaranteed. Several algorithms prove their results
by short and understandable test routines relying on mathematical
theorems.
See an overview on the available
number types and functions on the LEDA manual pages.
Compression And
Cryptography
Some types
and functions are simply helpful. Maybe it is not your main purpose
to compress your data, maybe it is not your task to use a signature,
but you can't deny that in most applications it is either necessary
or just nice to have such functionality available.
Look at the available
features LEDA compression & LEDA
cryptography to learn that
LEDA fully supports your demands regarding data compression and
data cryptography.
Container Types
Take your time to investigate
the many helpful container types. Have a look at the queues,
stacks, lists and sets LEDA offers you, and find the right type for
your purposes. You can use not only the most complete but also the
most efficient implementations available. Take a walk through the
manual
pages of LEDA list in
order to see what such a type can do for you.
Associative Container Types
Of course
you will need more sophisticated structures that will help you
organize your associative data relations; see sorted
sequences as representative for this group of helpers also providing dictionaries,
hashing arrays, maps, and more.
Some very special requirements are
accomplished by very specialized types, see
priority
queues for an example.
Graphs And Related Data Types
LEDA offers comfortable graph data types
realizing an iterator concept as well as a storage and cache
efficient implementation for static graphs. In addition LEDA offers
a wide variety of graph (and related thereto) network algorithms
like depth-first search, breadth-first search, shortest paths, minimal
spanning trees, matching, weighted matching, network flow, planarity
testing, graph layout and many more. The network algorithms can be
parameterized in the number type they use (int, double, integer,
rational). In case of numerically inexact number types like int and
double, the algorithms automatically detect rounding errors and number
overflows. Thus the correctness of the result is always guaranteed.
To learn more about that field you
should visit:
LEDA
manual: graph
& related data types
LEDA
manual: graph algorithms
Special Features: static graphs
Geometric Data Types
These structures are presented in detail on our dedicated
pages, just walk along the corresponding list
of information.
Visualization And Graphical User Interface
Besides a general
windows class providing functions for creating prototypes,
demo programs or GUI applications, there are also very specialized
features available that aim for the support of sophisticated classes.
Just survey LEDA's graphics
overview.
These are just examples For a complete information don't hesitate
to read the table
of contents of the LEDA manual and consult other sources
mentioned below and on our product-related
pages.
Links
LEDA product
pages
LEDA
manual
LEDA tutorial
other
LEDA information ressources
|