Descriptions taken from trekhleb/javascript-algorithms.
- Binary Search
- Breadth First Search
- Depth First Search
- Merge sort
- Quicksort
- Binary Expression Tree
- Dynamic array
- Graph
- Hash table
- Heap
- Linked list
- Queue
- Stack
- Tree
- Trie
The implementation is done with an educational purpose in mind, which means that the datastructures and algorithms do not provide a caller-friendly API, e.g. LinkedList#append(Node<T> n)
instead of LinkedList#append(T t)
or use visibility modifiers for access control because readability is key.