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

Copyright © 2008 Quappa Inc. All rights reserved. http://www.quappa.com