Algorithms Specialization - Coursera
This repo has 4 folders - one for each Coursera course in Algorithms Specialization.
-
Divide and Conquer, Sorting and Searching, and Randomized Algorithms cover asymptotic ("Big-oh") notation, sorting and searching, divide and conquer (master method, integer and matrix multiplication, closest pair), and randomized algorithms (QuickSort, contraction algorithm for min cuts). My Python implementations of the programming assignments are in 1_Divide_and_Conquer_Sorting_Searching_and_Randomized_Algorithms.
-
Graph Search, Shortest Paths, and Data Structures cover data structures (heaps, balanced search trees, hash tables, bloom filters), graph primitives (applications of breadth-first and depth-first search, connectivity, shortest paths), and their applications (ranging from deduplication to social network analysis). My Python implementations of the programming assignments are in 2_Graph_Search_Shortest_Paths_and_Data_Structures.