Binary Search Trees

Binary Search Trees are pervasive in computer science, their usefulness can not be overemphasized. From parsing, to searching, to sorting they pop up everywhere, even underpinning other ADT. They offer quick look up times

How to implement vector style dynamic arrays in C.

Dynamic Arrays

Most programming languages today offer some implementation of dynamic arrays in their standard libraries. Dynamically typed languages such as Perl, Swift, and

Graphs As a Data Structure

Graphs are an Abstract Data Type used to organize information and more importantly, how information is related such as the names of Cities and the roads that connect them, or individual people and their various

How to painlessly implement an associative array using a hash table.

Hash Tables

When it comes to the literature Hash Tables are often glossed over. Data Structures and Algorithms(DSA) books tend to focus on more complicated,

Exploring the 'Skip List' data structure as an alternative to self balancing Binary Search Trees for key/value pairs

What's a 'Skip List'?

A skip list is a data structure that was developed due to some of the 'unpleasant' asp