This repo contains codes for algorithms such as binary search, Fibonnaci Numbers, Palindromes and their properties, Divide & Conquer Algorithms (Quick Sort, MergeSort, etc.), Data Structures such as Stacks, Queues, Trees (DFS - Preorder, PostOrder, InOrder, BFS - LevelOrder), Heaps, Min-Max Heaps, Disjoint Sets, Priority Queues, Hash Tables, Binary Search Tree, Dynamic Programming, etc.
Additional algorithms on Graph Algorithms (such as BFS, DFS, Dijkstra, Bellman-Ford algorithms) are also added from Course 3 of Data Structures & Algorithms.
All codes are in Python and the questions are taken from the Algorithmic Toolbox Course on Coursera.
A few relatable problems to these topics from Leet Code are also added here, namely -
- Longest Palindromic Substring
- Kth Largest element in Array