A collection of examples
- Big O Notation
- Problem Solving Methods
- Frequency Counter
- Multiple Pointers
- Sliding Window
- Divide and Conquer
- Recursions
- Searching Algorithms
- Sorting Algorithms
- Elementary Sorting Algorithms
- Bubble Sort
- Selection Sort
- Insertion Sort
- Complex Sorting Algorithms
- Merge Sort
- Quick Sort
- Heap Sort
- Radix Sort
- Elementary Sorting Algorithms
- Data Structures
- Singly Linked Lists
- Doubly Linked Lists
- Stacks
- Queues
- Binary Search Trees
- Tree Traversal
- Binary Heaps
- Hash Tables
- Graphs
- Graph Traversal
- Dijkstra's Algorithm
- Dynamic Programming
[ ] - Add unit test cases for Algorithms
[ ] - Clean up code comments
[ ] - Add README for every section
-
Depth First Search
-
Breath First Search
-
Binary search
-
Matching Parenthesis
-
Hash Tables
-
Variables/Pointers manipulation
-
Reverse linked list (duplicates , removing duplicates)
-
Sorting fundamentals (quicksort, mergesort, bubblesort techniques, runtime of a sort, time space complexity)
-
Recursion
-
Custom Data Structures (OOP, Stacks, Heaps, Queue, Linked Lists, Binary Trees)