Welcome to libavl version 2.0.3, a library in ANSI/ISO C for the
manipulation of binary trees and balanced binary trees. libavl is
written using a literate programming system called TexiWEB. By way of
TexiWEB, libavl is as much a textbook on binary trees and balanced
binary trees as it is a collection of code.
Version 2.0 is a complete rewrite of earlier versions. It is not
binary or source compatible with libavl 1.x. However, if libavl 2.0's
new features are unnecessary, there is no need to upgrade. libavl
1.4.1 does not contain any bugs known to cause incorrect behavior. It
is still supported in the sense that if any such bugs are reported,
they will be fixed.
The assistance of the community is requested in debugging and
improving libavl. Your suggestions and bug reports are appreciated,
whether related to code or prose. Exposition, style, spelling,
punctuation, and grammar are all fair game. All the code in this
release has been carefully tested, but unknown bugs may still exist.
Please check out and proofread libavl and report any bugs by email to
<bug-avl@gnu.org>.
This release supports the following kinds of trees:
Plain binary trees:
* Binary search trees
* AVL trees
* Red-black trees
Threaded binary trees:
* Threaded binary search trees
* Threaded AVL trees
* Threaded red-black trees
Right-threaded binary trees:
* Right-threaded binary search trees
* Right-threaded AVL trees
* Right-threaded red-black trees
Binary trees with parent pointers:
* Binary search trees with parent pointers
* AVL trees with parent pointers
* Red-black trees with parent pointers
See INSTALL for advice on where to go from here. Take a look at NEWS
for a list of new features. For features tentatively planned for
inclusion in future releases of libavl, see ROADMAP.
Components of this distribution are licensed as follows:
* The manual is covered by the GNU Free Documentation License.
The manual includes complete source code for the libavl
libraries and related programs, so these are also released
under the GNU Free Documentation License.
* The libavl libraries are also released under the GNU Lesser
General Public License. The GNU GPL often makes sense for
libraries, but because so many other libraries provide
balanced search trees, the LGPL is a better fit for libavl.
See <http://www.gnu.org/licenses/why-not-lgpl.html> for more
information.
* Programs are also released under the GNU General Public
License.
Please send bug reports and enhancement requests for libavl to
<bug-avl@gnu.org>.
Local variables:
mode: text
End: