CSCI-UA 480 (Algorithmic Problem Solving)



May 12, 10:00-11:50am ET, alternative time if you cannot or do not want to take the exam on May 17

May 17, 12:00-1:50pm ET, CAS scheduled final exam



Week 14 (5/5 - 5/11)

Lecture 1 (Wednesday)

Problem presentations.

Lecture 2 (Monday)

Problem presentations and wrapping up the course.

Readings

Assignment

Due Wednesday, May 12:

  • provide feedback and comments for the presentations done on April 5, 6, 10 (your comments should be about the presentation itself and the proposed solutions; they should be made under the Ed post created by the presenter)

Ongoing:

  • participate in outside online competitions (make sure to register and complete this form before the actual contest)
  • comment and ask questions about solutions for the online contest problems made by other students

You need to participate in a live contest, not one that happened in the past and still allows for virtual participation.

Week 13 (4/28 - 5/4)

Lecture 1 (Wednesday)

Invited speaker: Julie Cestaro

Lecture 2 (Monday)

Readings

Assignment

Due Wednesday, May 5:

  • provide feedback and comments for the presentations done on April 28 and April 29 (your comments should be about the presentation itself and the proposed solutions; they should be made under the Ed post created by the presenter)

Ongoing:

  • participate in outside online competitions (make sure to register and complete this form before the actual contest)
  • comment and ask questions about solutions for the online contest problems made by other students

You need to participate in a live contest, not one that happened in the past and still allows for virtual participation.

Week 12 (4/19 - 4/27)

Monday, April 19

No Classes - Spring Break, part 2

Lecture 1 (Wednesday)

Continue/finish with string algorithms

Lecture 2 (Monday)

Graph algorithms (intro)

slides

Readings

Assignment

Due Wednesday, April 28:

  • provide feedback and comments for the presentations done on April 21 and April 22 (your comments should be about the presentation itself and the proposed solutions; they should be made under the Ed post created by the presenter)

Ongoing:

  • participate in outside online competitions (make sure to register and complete this form before the actual contest)
  • comment and ask questions about solutions for the online contest problems made by other students

You need to participate in a live contest, not one that happened in the past and still allows for virtual participation.

Week 11 (4/12 - 4/18)

Lecture 1 (Monday)

Dynamic programming (wedding shopping problem)

slides

Lecture 2 (Wednesday)

String algorithms.

slides

Readings

Assignment

Due Wednesday, April 21:

  • provide feedback and comments for the presentations done on April 14 and April 15 (your comments should be about the presentation itself and the proposed solutions; they should be made under the Ed post created by the presenter)

Ongoing:

  • participate in outside online competitions (make sure to register and complete this form before the actual contest)
  • comment and ask questions about solutions for the online contest problems made by other students

You need to participate in a live contest, not one that happened in the past and still allows for virtual participation.

Week 10 (4/5 - 4/11)

Lecture 1 (Monday)

Dynamic programming.

slides

Lecture 2 (Wednesday)

Dynamic programming.

Readings

Assignment

Due Wednesday, April 14:

  • provide feedback and comments for the presentations done on April 7 and April 8 (your comments should be about the presentation itself and the proposed solutions; they should be made under the Ed post created by the presenter)

Ongoing:

  • participate in outside online competitions (make sure to register and complete this form before the actual contest)
  • comment and ask questions about solutions for the online contest problems made by other students

You need to participate in a live contest, not one that happened in the past and still allows for virtual participation.

Week 9 (3/29 - 4/4)

Lecture 1 (Monday)

Midterm exam.

Lecture 2 (Wednesday)

Pset 8 discussion.

Dynamic programming (coin change)

Readings

Assignment

Due Wednesday, April 7:

  • provide feedback and comments for the presentations done on March 31 and April 1 (your comments should be about the presentation itself and the proposed solutions; they should be made under the Ed post created by the presenter)

Ongoing:

  • participate in outside online competitions (make sure to register and complete this form before the actual contest)
  • comment and ask questions about solutions for the online contest problems made by other students

You need to participate in a live contest, not one that happened in the past and still allows for virtual participation.

Week 8 (3/22 - 3/28)

Lecture 1 (Monday)

Divide and conquer.

slides

Greedy.

slides

Lecture 2 (Wednesday)

Finish greedy.

Dynamic programming

slides, part1

Readings

Assignment

Due Wednesday, March 31:

  • provide feedback and comments for the presentations done on March 24 and March 25 (your comments should be about the presentation itself and the proposed solutions; they should be made under the Ed post created by the presenter)

Ongoing:

  • participate in outside online competitions (make sure to register and complete this form before the actual contest)
  • comment and ask questions about solutions for the online contest problems made by other students

By mid-semester you should aim to have two out of the four outside contests done!

We are at the mid-semester point!!!!

Week 7 (3/15 - 3/21)

Lecture 1 (Monday)

Brute force approach to problem solving. Backtracking.

Lecture 2 (Wednesday)

Problemset 7 discussion.

Finish with brute force.

Readings

  • chapter 4 in Guide to Competitive Programming
  • chapter 7 in Principles of Algorithmic Problem Solving

Assignment

Due Sunday, March 21:

  • problem set posted on Brightspace

Due Wednesday, March 24:

  • provide feedback and comments for the presentations done on March 17 and March 18 (your comments should be about the presentation itself and the proposed solutions; they should be made under the Ed post created by the presenter)

Ongoing:

  • participate in outside online competitions (make sure to register and complete this form before the actual contest)
  • comment and ask questions about solutions for the online contest problems made by other students

By mid-semester you should aim to have two out of the four outside contests done!

We are at the mid-semester point!!!!

Week 6 (3/8 - 3/14)

Lecture 1 (Monday)

Sorting and searching

slides

Lecture 2 (Wednesday)

Quick-select and finish with sorting and searching types of problems.

Brute force approach to problem solving

slides

Readings

  • chapter 4 in Guide to Competitive Programming
  • chapter 7 in Principles of Algorithmic Problem Solving

Assignment

Due Sunday, March 14:

  • problem set posted on Brightspace

Due Wednesday, March 17:

  • provide feedback and comments for the presentations done on March 10 and March 11 (your comments should be about the presentation itself and the proposed solutions; they should be made under the Ed post created by the presenter)

Ongoing:

  • participate in outside online competitions (make sure to register and complete this form before the actual contest)
  • comment and ask questions about solutions for the online contest problems made by other students

By mid-semester you should aim to have two out of the four outside contests done!

Week 5 (3/1 - 3/7)

Lecture 1 (Monday)

Priority queues.

Non-linear data structures, 2

Lecture 2 (Wednesday)

Disjoint-Sets / Union-Find

slides

Readings

  • section 7.6.2 in Guide to Competitive Programming

Assignment

Due Sunday, March 7:

  • problem set posted on Brightspace

Due Wednesday, March 10:

  • provide feedback and comments for the presentations done on March 3 and March 4 (your comments should be about the presentation itself and the proposed solutions; they should be made under the Ed post created by the presenter)

Ongoing:

  • participate in outside online competitions (make sure to register and complete this form before the actual contest)
  • comment and ask questions about solutions for the online contest problems made by other students

Week 4 (2/22 - 2/28)

Lecture 1 (Monday)

  • Invited talk: Advice about Interviews from Helen Chang

Lecture 2 (Wednesday)

  • problem set 4 discussion
  • finish with binary (search) trees questions from the previous class

Readings

  • chapter 5 in Guide to Competitive Programming

Assignment

Due Sunday, Feb 28:

  • problem set posted on Brightspace

Due Wednesday, March 3:

  • provide feedback and comments for the presentations done on Feb 24 and Feb 25 (your comments should be about the presentation itself and the proposed solutions; they should be made under the Ed post created by the presenter)

Ongoing:

  • participate in outside online competitions (make sure to register and complete this form before the actual contest)
  • comment and ask questions about solutions for the online contest problems made by other students

Week 3 (2/12 - 2/18)

Feb 15 (Monday) no classes scheduled

Feb 18 (Thursday) NYU follows Monday schedule

Lecture 1 (Wednesday)

Lecture 2 (Thursday)

Readings

  • chapter 5 in Guide to Competitive Programming

Assignment

Due Monday, Feb 21:

  • problem set 3 posted on Brightspace

Due Wednesday, Feb 24:

  • provide feedback and comments for the presentations done on Feb 17 and Feb 18 (your comments should be about the presentation itself and the proposed solutions; they should be made under the Ed post created by the presenter)

Ongoing:

  • participate in outside online competitions (make sure to register and complete this form before the actual contest)
  • comment and ask questions about solutions for the online contest problems made by other students

Week 2 (2/4 - 2/10)

Lecture 1

Lecture 2

  • Bitmasks: using bit manipulation, representing and manipulating sets.

Readings

  • chapter 2.3 in Guide to Competitive Programming

Assignment

Due Wednesday, Feb 10:

Due Monday, Feb 15:

  • problem set 2 posted on Brightspace

Optional:

  • complete the survey about homework due day (link available on Ed)

Ongoing:

  • participate in outside online competitions
  • make sure to register and complete this form before the actual contest

Week 1 (1/28 - 2/3)

Lecture 1 (2/1)

Intro to the class.


Gradescope verdicts for problem solutions.

Lecture 2 (2/3)

Fundamentals: algorithmic analysis, data types/sizes.

Readings

  • chapter 1 in Guide to Competitive Programming …

Recitation / Lab (2/3)

  • Meet your section leader
  • Meet a few people from your section
  • Start solving problems

Assignment

Due immediately:

  • register on the VJudge website
  • complete the class survey (you need to register on VJudge prior to completing this survey)

Due Friday, Feb. 5:

  • problem set 1 posted on Brightspace