This page contains implementations of dictionary data structures.


Separate C source files and descriptions are provided for each dictionary implementation.

[Binary Search Tree, AVL Tree, 2-3 Tree, Red-Black Tree, Skip List, Hash Table, Digital Search Tree, Radix Search Trie]

These dictionaries can be used by algorithms in this repository.

Common Files

The header file dict_info.h defines a common structure type that each dictionary can provide.  A program which uses this common structure type is then able to use different dictionaries interchangeably, as done by the supplied example program.

Binary Search Tree

AVL Tree

2-3 Tree

Standard 2-3 tree: Modified 2-3 tree, supporting delete_min() in O(1) worst case time:

Red-Black Tree

Hash Table

Skip List

Digital Search Tree

Radix Search Trie