SPL provies a set of standard datastructures. They are grouped here by their
underlying implementation which usually defines their general field of
application.
Doubly Linked Lists
A Doubly Linked List (DLL) is a list of nodes linked in both directions to
each others. Iterator's operations, access to both ends, addition or
removal of nodes have a cost of O(1) when the underlying structure is a DLL.
It hence provides a decent implementation for stacks and queues.
SplDoublyLinkedList
SplStack
SplQueue
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.