Skip to content

Intro to Algorithms

Free Course

Social Network Analysis

Related Nanodegree Program

Introduction to Programming

About this course

Ever played the Kevin Bacon game? This class will show you how it works by giving you an introduction to the design and analysis of algorithms, enabling you to discover how individuals are connected.

What you will learn

  1. A Social Network Magic Trick
    • Become familiar with algorithm analysis.
    • Eulerian Path and Correctness of Na.
    • Russian peasants algorithm and more.
  2. Growth Rates in Social Networks
    • Use mathematical tools to analyze how things are connected.
    • Chain, ring and grid networks.
    • Big Theta and more.
  3. Basic Graph Algorithms
    • Find the quickest route to Kevin Bacon.
    • Properties of social networks.
    • Clustering coefficient and more.
  4. It's Who You Know
    • Learn to keep track of your best friends using heaps.
    • Degree centrality.
    • Top K Via Partitioning and more.
  5. Strong and Weak Bonds
    • Work with social networks that have edge weights.
    • Make a tree and strength of connections.
    • Weighted social networks and more.
  6. Hardness of Network Problems
    • Explore what it means for a social network problem to be "harder" than other.
    • Tetristan and Exponential Running Time
    • Degrees of hardness and more.
  7. Review and Application
    • Interview with Peter Winker (Professor, Dartmouth College) on names and boxes problem and puzzles and algorithms.
    • Interview with Tina Eliassi-Rad (Professor, Rutgers University) on statistical measures in network and social networks in security and protests.
    • Additional interviews with Andrew Goldberg (Microsoft Research), Vukosi Marivate (Rutgers University) and Duncan Watts (Microsoft).

Prerequisites and requirements

This class assumes an understanding of programming at the level of CS101, including the ability to read and write short programs in Python; it also assumes a comfort level with mathematical notation at the level of high school Algebra II or the SATs.

See the Technology Requirements for using Udacity.

Why take this course?

By the end of this class you will understand key concepts needed to devise new algorithms for graphs and other important data structures and to evaluate the efficiency of these algorithms.

Learn with the best.

  • Michael Littman
    Michael Littman