• July. 5, 2018: Webpage created
  • Sept. 5, 2018: Homework 1 is out. Due on Oct. 14, 2018, 11:59pm EST
  • Sept. 5, 2018: Project 1 Report due on Oct. 21, 2018, 11:59pm EST
  • Oct. 22, 2018: Homework 2 is out. Due on Nov. 18, 2018, 5pm EST
  • Oct. 22, 2018: Project 2 Report due on Dec. 7, 2018, 11:59pm EST

Course summary

In this course we will talk about sublinear algorithms, which has its roots in the study of Big Data that occur more and more frequently in various applications, e.g., analyses of financial transactions, internet traffic, social networks, genome sequences, etc. Concretely, we will talk about:
1. Sublinear space algorithms. In particular, data stream algorithms, namely, algorithms that solve a problem by making one pass over the data set while using small memory. These algorithms are important in many application areas such as databases and networking, where data arrives at a high speed and there is no time and/or need to store it for offline processing.
2. Sublinear time algorithms, that is, algorithms that do not even read the whole input when outputting the answers.
3. Sublinear communication algorithms. The data is stored in multiple machines, who want to jointly compute functions defined on the union of the data sets via communication.
4. Random topics.
Participants are expected to have a good background in algorithm design and probability, and have good programming skills.
The evaluation will be based on homework assignments and individual project/presentation. The list of questions will be handed out in the middle of the course.
Detailed list of topics is available in the course plan below.


Qin Zhang
Office hours: by appointment

Time and place

2:30pm - 3:45pm Monday/Wednesday
Luddy Hall 002.