Implementations of standard data structures and algorithms.
This is a personal project entirely for my own sake.
The goal is to challenge myself and along the way get more intimate with Elixir, possibly even good at it.
Complexities | Big-O Cheat Sheet
Getting familiar with standard algorithms and their complexities is one part of the project. They form a basis from which you can build larger more complex software and algorithms.
Algorithms (ongoing) | Primer
- Insertion Sort
- Merge Sort
- Dijkstra's
- Floyd-Warshall
- Traveling Salesman
- A*
- Bloom Filter
- Breadth-First Iterative Search
- Binary Search
- K-Way Merge
- Bubble Sort
- Selection Sort
- In-place Quick Sort
- Bucket Sort
- Radix Sort
- Closest Pair
Getting familiar with standard data structures and their complexities is the other part of the project. Combined with the algorithms I should have a great foundation on which to build.
Data structures (ongoing) | Data Science Tutorials - TopCoder
- Vector (Dynamic Array)
- Linked List
- Stack
- Queue
- Circular Queue
- Hash Map
- Set
- Priority Queue
- Binary Search Tree
I will gladly call this project a success if I achieve anything like fluency in Elixir. Of course I hope to implement as many as possible of the different algorithms and data structures, but this is a personal project and such doesn't need to be complete.