CSCI-UA 480 (Algorithmic Problem Solving)

Course Essentials

We’ll be using NYU's new learning management system (LMS) called Brightspace instead of NYU Classes for this course.

Check out student training materials for more info on the new LMS.

Class meetings:
Mondays and Wednesdays 11:00am - 12:15pm, (online)

Wednesdays 3:30-4:45PM, (online)
Wednesdays 3:30-4:45PM, Room CIWW 201, (In-Person)

Recitation leaders:
Kunal Khatri (sec. 522)
Samasth Norway Ananda (sec. 523)

Office hours:
See Brightspace for the times and Zoom links of our office hours.

Best way to communicate outside of office hours: Ed q&a and discussion forum
- Post all course related questions to the discussion board: content of lectures, labs, projects, ….
- If you have private questions related to your grading, your course progress, or anything that should not be discussed by the entire class, you should post them on Ed as well, but make them visible only to the course staff (any question on Ed can be made private).
- To get started with Ed, follow this Quick Start Guide.
- For those registering late: you can self sign up on Ed for this class (make sure you use your netID email address, or you may end up being removed from the site once we update the roster).

How to get help? Ask questions on discussion forums! Ask questions during lectures! Talk to us (We cannot help, unless we know there is an issue). See the tutors and/or instructor during posted office hours or set up an appointment! Make sure you let us know as soon as you feel lost in the course. Do not wait till you start getting failing grades because it might be too late by then.

Course Description

Algorithmic Problem Solving

CSCI-UA 480 Prerequisite: Computer Systems Organization (CSCI-UA 201), Basic Algorithms (CSCI-UA 310).

Many of the top firms in the technological and financial sectors are using algorithmic problems as interview questions for assessing candidate skill. In this course we take this idea one step further and use algorithmic problem solving as way to hone programming skills. Students will use the material covered in the data structures and algorithms courses and learn new algorithmic techniques to solve challenging problems quickly. Each week will be devoted to a particular type of algorithm. Weekly problem sets will reinforce the lecture, and require students to implement their solutions in Java or C++.

In this course students are expected to do a lot of hands on programming. The implementations are evaluated based on their correctness and speed.

Sample problems:

Important Dates

Midterm Exam (these dates may change if there are any schedule changes):

Final Exam: (date and time subject to change by CAS, check the dates posted by the department here )