Data Structures

Table of Contents

This library provides a set of standard data structures. They are grouped here by their underlying implementation which usually defines their general field of application.

Singly Linked Lists

A Singly Linked List (SLL) is a list of nodes linked in one direction to each other. Iterator's operations, access to both ends, addition or removal of nodes have a cost of O(1) when the underlying structure is a SLL. It hence provides a decent implementation for stacks and queues.

Heaps

Heaps are tree-like structures that follow the heap-property: each node is greater than or equal to its children, when compared using the implemented compare method which is global to the heap.

Arrays

Arrays are structures that store the data in a continuous way, accessible via indexes. Don't confuse them with PHP arrays: PHP arrays are in fact implemented as ordered hashtables.

To Top