Network and Graph Algorithms From Scratch
Trees, Graphs and Networks are fundamental data structures that underlie much of the recent developments in data science and computer science algorithms. Technologies and Applications like Social Networks, Cloud and Distributed computing, Cryptocurrencies and Traffic Routing and directions all rely on the proper use of graph concepts.
In this course we will build, step by step, a mini toolkit of network representations and algorithms that will allow students to understand the fundamental ideas and concepts that lie at the base of state of art algorithms (such as PageRank and recommendation systems), technologies (such as graph databases) and tools (like web crawlers).
Networks and Graphs
Network and Graph examples
Types of Graphs
Tree and Graph Representations
Degree and Weight Correlations
Paths and walks on Graphs
Epidemic and Viral Spreading
Shortest paths and Maximum Spanning Trees
Graph diameter and Friendship Paradox
Random Walks and Markov Chains
Applications to Empirical Networks
Bipartite networks and Recommender Systems
Graphs and Optimization