Intro to Algorithms

Thank you for signing up for the course! We look forward to working with you and hearing your feedback in our forums.

Need help getting started?


Course Resources

Additional Reading

  1. Crash into Python: Python for Programmers with 3 Hours An introduction to Python syntax and usage for programmers coming from other languages.

  2. Official Python Documentation

  3. Download Python

Downloadable Materials

You can download Supplemental Materials, Lesson Videos and Transcripts from Downloadables (bottom right corner of the Classroom) or from the Dashboard (first option on the navigation bar on the left hand side).

Course Syllabus

Lesson 1: A Social Network Magic Trick

Learn the fundamental properties of social networks and how to predict the running time of a program. Problem Set 1.

Lesson 2: Growth Rates in Social Networks

Explore the different types of networks: Problem Set 2.

Lesson 3: Basic Graph Algorithms

Learn how to measure the connectivity of social networks and find paths between users. Problem Set 3

Lesson 4: It's Who You Know

Calculate network statistics efficiently and implement a particularly useful data structure, heaps! Problem Set 4

Lesson 5: Strong and Weak Bonds

Use weighted graphs to express the connection strength between users in a social network. Problem Set 5

Lesson 6: Hardness of Network Problems

NP-Completeness. Learn how to categorize and compare the difficulty of problems. Problem Set 6

Lesson 7: Recap and Exploration

Learn about how network algorithms are used in research and industry with interviews of leading researchers.

Course notes

Final Assessment

For the final assesment you will construct algorithms to solve various problems related to social networking.

Follow this link to access the final assessment.