CS 3000: Algorithms & Data

Syllabus | Schedule

Time & Location

Lectures will be recorded live via Zoom at the scheduled course time:

Monday - Thursday 1:30 - 3:10PM

Live lecture attendance is optional, but watching the lectures is assumed for homeworks and exams. More detailed information about course structure is below.



Name: Tim LaRock. You can just call me Tim. I use he/him/his pronouns.

Email: larock.t@northeastern.edu

Timezone: UTC-4 (EDT, Boston time)

Instructor Office hours

I will hold open office hours for a few hours a week in my Zoom room. Tenatively, these hours will be:

If you feel you need significant help, or would just prefer a 1-1 or small group conversation, we can make appointments to meet separately. Please email me to schedule an appointment!

Teaching Assistants

There are 9 TAs for the course. They are available as a resource for you as well, please reach out to them. TAs will be available to help you and will handle grading of homework and exams.

Name email
Saurabha jirgi.s@husky.neu.edu
Ronn jacob.r@husky.neu.edu
Dania abuhijleh.d@husky.neu.edu
Drew bodmer.d@husky.neu.edu
Angela gross.an@husky.neu.edu
Luke boyer.l@husky.neu.edu
Kevin hui.k@husky.neu.edu
Samar dikshit.s@northeastern.edu
Office Hours Schedule

All office hours will be conducted on Zoom. You can find the Zoom room links on Piazza under Resources –> Staff.

To make it easier for us to be prepared: please email the person whose office hours you will attend beforehand with some information about which questions or topics you want to discuss!

All times Boston time.

Time Monday Tuesday Wednesday Thursday Friday
8AM-9AM Tim
9AM-10AM Dania Dania
10AM-11AM Saurabha
11AM-12PM Saurabha Samar
12PM-1PM Ronn, Angela Ronn
1PM-2PM Drew Tim
2PM-3PM Angela
3PM-4PM Drew Samar
4PM-5PM Tim
6PM-7PM Kevin Kevin
7PM-8PM Luke
8PM-9PM Luke

Content Overview

This is an introductory course in algorithms. Although any computer program can be viewed as an implementation of an algorithm for solving a particular computational problem, in this course we focus not on the programs themselves but on the underlying computational problems, and general algorithmic techniques for solving these problems. In this course, we will:

Specific topics typically include:


I will assign readings from Jeff Erickson’s Algorithms book, which is freely availabe online. I may also assign reading from the online version of Introduction to Algorithms by Cormen, Leiserson, and Rivest, which is a standard reference for an algorithms course (commonly referred to as CLR).

Originally, I was planning to assign readings from Algorithm Design by Kleinberg and Tardos. Given the difficulty (and questionable morality) of acquiring books at the present moment, as well as potential for inequity in the ability of students living in different geographic areas to get the book, it is not required. If you can get an electronic version, or if you already have a copy, it will likely be a helpful resource and I encourage you to peruse it.


Outside of Zoom lectures, our course materials will be located on this webpage and Canvas. Generally I will prefer to update this webpage and use Canvas mostly for keeping track of assignment submissions and grades. If you are unable to access Canvas, let me know in an email.


We are using Piazza for question and answer. If you are in the class but not enrolled in Piazza, send me an email.


As the instructor of the course, I am committed to maintaining a positive learning environment based upon communication, mutual learning, and respect. Any suggestions as to how to further such a positive and open environment in this class will be appreciated and given serious consideration. The university does not discriminate on the basis of race, sex, age, disability, religion, sexual orientation, color, or national origin. If you are a person with a disability and anticipate needing any type of accommodation in order to participate in this class, please advise me and make appropriate arrangements with Disability Resource Center (617) 373-4428. I will accomodate any and all accessibility requrests to the best of my ability. Some accomodation requests should come to me via the University. However, if you have an accomodation request that would not be officially communicated to me via the University, or if you would like to talk to me about University accomodation, please feel free to contact me about it.

More details on course structure

I encourage you to consider “choosing” between two ways to take this course:

  1. Synchonously. You attend most lectures live as if it were an in-person ccourse. This option has more opportunities for interaction with me and your peers.
  2. Asynchronously. You watch the recordings of the lectures rather than attending them live.

I put “choosing” in quotes because there is no formal necessity to choose a specific way of engaging with the material, and because some students may not have a choice given time differences. For those who are in a position to choose, I expect it to be helpful to commit to one or the other way and give it a try. You may then revise your thinking and choose the other option, or something in between (I expect many students to fall somwehere in between).

More information about what to expect:

Detailed homework policies

General Plagiarism Policy

I take academic honesty seriously, and you should too. The Northeastern University Policy on Academic Integrity can be found at: http://www.northeastern.edu/osccr/academic-integrity-policy/

In general, in this course it is not considered cheating if you:

It is considered cheating if you:


The final course grade will be computed based on a weighted average of:

A brief note on the times

As you are all well aware, we are in the middle of a global pandemic. This has already impacted our course significantly, moving it from in person to online. All of us are likely expereincing stress and difficulty because of these circumstances in specific ways. I promise to you that I am going to do my best to be patient and lenient where possible during this course. If you are going through something that is impacting your ability to succeed, please let me know (in whatever amount of detail (or lack therof) you feel comfortable). If you know you will be unable to complete an assignment and need an extension, ask in advance. Of course there are limitations to my power, but I will do my best to accomodate all individual circumstances.