# Data Structures and Algorithms in PHP
# Primitive data types
# Abstract data types (ADT)
# Asymptotic Analysis / Algorithm analysis
# Asymptotic notations
- Big-O notation -
$O$ (worst case / upper bound) - Big-theta notation -
$\Theta$ (Average case / tight bound) - Big-omega notation -
$\Omega$ (Best case / lower bound)
# Data structures
# Linear data structures
- Array
- Stack
- Queue
- Map
- Linked list
- Singly linked list
- Doubly linked list
# Non linear data structures
- Tree
- Binary tree
- Binary search tree
- Self-balanced tree
- B-tree
- N-ary tree
- Graph
- Heap
- Trie
# Algorithms
# Search algorithms
- Linear search
- Binary search
- Interpolation search
- Exponential search
- Search using hash table
- Tree search
- Breadth first search
- Depth first search
# Sort algorithms
- Bubble sort
- Selection sort
- Insertion sort
- Merge sort
- Quick sort
- Bucket sort
- Divide and conquer sort
- PHP built in sort
# Standard PHP Library (SPL) data structures
- SplDoublyLinkedList
- SplStack
- SplQueue
- SplHeap
- SplMaxHeap
- SplMinHeap
- SplPriorityQueue
- SplFixedArray
- SplObjectStorage