Common data structure and algorithms implemented in Python. Previously I wrote them as separate Python scripts. But once I discovered jupyter notebooks, there's no going back. I have also added as much unit tests as possible. For unit testing, I have used unittest
and nose
modules in Python.
- Stack
- Queue
- Linked list
- Singly linked list
- Doubly linked list
- Circular linked list
- Tree
- Binary search tree
- Trie
- Hash table
- Searching
- Linear search
- Binary search
- Ternary search
- Sorting
- Bubble sort
- Insertion sort
- Selection sort
- Merge sort
- Quicksort
- Backtracking problems
- Recursion
- Greedy
SQL queries for problems on sql-ex.ru.
- Cracking the coding interview
- Algorithm Design Manual
- sql-ex.ru
- https://github.com/donnemartin/interactive-coding-challenges
- https://github.com/prakhar1989/Algorithms
- Geeksforgeeks
I am learning Python and TDD. So if you notice any issues with the code or unit tests, please let me know. Also if you want to contribute, just create your own branch and send a pull request.