Numerical Computing (CSCI-UA 421)

Introduction to numerical computation: the need for floating-point arithmetic, the IEEE floating-point standard. Importance of numerical computing in a wide variety of scientific applications. Fundamental types of numerical algorithms: direct methods (e.g., for systems of linear equations), iterative methods (e.g., for a nonlinear equation), and discretization methods (e.g., for a differential equation). Numerical errors: How can you tell if you can trust your answers? The use of graphics and software packages such as Matlab. Programming assignments.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2022)


CSCI-UA 421-000 (7822)01/24/2022 – 05/09/2022 Tue,Thu11:00 AM – 12:00 AM (Morning)at Washington SquareInstructed by Overton, Michael

Theory of Computation (CSCI-UA 453)

This course takes a mathematical approach in studying topics in computer science, such as: regular languages and some of their representations (deterministic finite automata, non-deterministic finite automata, regular expressions); proof of non-regularity. Context free languages and pushdown automata; proofs that languages are not context free. Elements of computability theory. Brief introduction to NP-completeness.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2022)


CSCI-UA 453-000 (9017)01/24/2022 – 05/09/2022 Tue,Thu9:00 AM – 10:00 AM (Morning)at Washington SquareInstructed by Khot, Subhash

Artificial Intelligence (CSCI-UA 472)

Prerequisite: V22.0201 and V22.0310. There are many cognitive tasks that people can do easily and almost unconsciously but that have proven extremely difficult to program on a computer. Artificial intelligence is the problem of developing computer systems that can carry out these tasks. We will focus on three central areas in AI: representation and reasoning, machine learning, and natural language processing.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2022)


CSCI-UA 472-000 (20848)01/24/2022 – 05/09/2022 Mon,Wed11:00 AM – 12:00 AM (Morning)at Washington SquareInstructed by Davis, Ernest · Deshpande, Sahil

Introduction to Machine Learning (CSCI-UA 473)

Students will learn about the theoretical foundations of machine learning and how to apply machine learning to solve new problems. Machine learning is an exciting and fast-moving field at the intersection of computer science, statistics, and optimization, with many consumer applications such as machine translation, speech recognition, and recommendation. Machine learning also plays an increasingly central role in data science, enabling discoveries in fields such as biology, physics, neuroscience, and medicine. In the first part of the course, students will learn about supervised prediction methods including linear and logistic regression, support vector machines, ensemble methods, and decision trees. In the second part of the course, students will learn about methods for clustering, dimensionality reduction, and statistical inference.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2021)


CSCI-UA 473-000 (9300)01/28/2021 – 05/10/2021 Mon,Wed2:00 PM – 3:00 PM (Early afternoon)at Washington SquareInstructed by Wilson, Andrew

Data Structures (CSCI-UA 9102)

The use and design of data structures, which organize information in computer memory. Stacks, queues, linked lists, binary trees: how to implement them in a high level language, how to analyze their effect on algorithm efficiency, and how to modify them. Programming assignments.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Fall 2021)


CSCI-UA 9102-000 (19807)09/02/2021 – 12/14/2021 Tue,Thu12:00 AM – 1:00 PM (Early afternoon)at NYU Paris (Global)Instructed by Cosse, Augustin Marie Dominique


CSCI-UA 9102-000 (19808)09/02/2021 – 12/14/2021 Tue2:00 PM – 3:00 PM (Early afternoon)at NYU Paris (Global)Instructed by Cosse, Augustin Marie Dominique

Basic Algorithms (CSCI-UA 310)

Prerequisites: Data Structures (CSCI-UA 102); Discrete Mathematics (MATH-UA 120); and either Calculus I (MATH-UA 121) OR Math for Economics I (MATH-UA 211). An introduction to the study of algorithms. Two main themes are presented: designing appropriate data structures, and analyzing the efficiency of the algorithms which use them. Algorithms for basic problems are studied. These include sorting, searching, graph algorithms and maintaining dynamic data structures. Homework assignments, not necessarily involving programming.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2022)


CSCI-UA 310-000 (7819)01/24/2022 – 05/09/2022 Tue,Thu12:00 AM – 1:00 PM (Early afternoon)at Washington SquareInstructed by Regev, Oded


CSCI-UA 310-000 (7820)01/24/2022 – 05/09/2022 Mon12:00 AM – 1:00 PM (Early afternoon)at Washington SquareInstructed by Song, Min Jae


CSCI-UA 310-000 (7821)01/24/2022 – 05/09/2022 Tue,Thu8:00 AM – 9:00 AM (Morning)at Washington SquareInstructed by Regev, Oded


CSCI-UA 310-000 (8906)01/24/2022 – 05/09/2022 Wed8:00 AM – 9:00 AM (Morning)at Washington SquareInstructed by Fenteany, Peter


CSCI-UA 310-000 (9912)01/24/2022 – 05/09/2022 Mon,Wed3:00 PM – 4:00 PM (Late afternoon)at Washington SquareInstructed by Nassajianmojarrad, Seyed · Mundra, Jaya


CSCI-UA 310-000 (9913)01/24/2022 – 05/09/2022 Tue4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by Jin, Yifan


CSCI-UA 310-000 (20845)01/24/2022 – 05/09/2022 Mon12:00 AM – 1:00 PM (Early afternoon)at Washington SquareInstructed by Karthikeyan, Harish


CSCI-UA 310-000 (20846)01/24/2022 – 05/09/2022 Wed8:00 AM – 9:00 AM (Morning)at Washington SquareInstructed by Agarwal, Ishan


CSCI-UA 310-000 (10617)01/24/2022 – 05/09/2022 Tue4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by Zhao, Xinyi

Operating Systems (CSCI-UA 202)

This course covers the principles and design of operating systems. Topics include process scheduling and synchronization, deadlocks, memory management including virtual memory, input-output and file systems. Programming assignments.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2022)


CSCI-UA 202-000 (7818)01/24/2022 – 05/09/2022 Mon,Wed3:00 PM – 4:00 PM (Late afternoon)at Washington SquareInstructed by Walfish, Michael


CSCI-UA 202-000 (9186)01/24/2022 – 05/09/2022 Tue,Thu12:00 AM – 1:00 PM (Early afternoon)at Washington SquareInstructed by Gottlieb, Allan


CSCI-UA 202-000 (20844)01/24/2022 – 05/09/2022 Tue,Thu3:00 PM – 4:00 PM (Late afternoon)at Washington SquareInstructed by Gottlieb, Allan

Data Structures (CSCI-UA 102)

The use and design of data structures, which organize information in computer memory. Stacks, queues, linked lists, binary trees: how to implement them in a high level language, how to analyze their effect on algorithm efficiency, and how to modify them. Programming assignments.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2022)


CSCI-UA 102-000 (20828)01/24/2022 – 05/09/2022 Mon,Wed3:00 PM – 4:00 PM (Late afternoon)at Washington SquareInstructed by Korth, Evan · Vataksi, Denisa


CSCI-UA 102-000 (20833)01/24/2022 – 05/09/2022 Tue4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by Vieira, Diogo


CSCI-UA 102-000 (20830)01/24/2022 – 05/09/2022 Tue,Thu2:00 PM – 3:00 PM (Early afternoon)at Washington SquareInstructed by Bari, Anasse · Rao, Sindhuja


CSCI-UA 102-000 (20834)01/24/2022 – 05/09/2022 Wed4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by Mavi, Vaibhav


CSCI-UA 102-000 (20831)01/24/2022 – 05/09/2022 Tue,Thu9:00 AM – 10:00 AM (Morning)at Washington SquareInstructed by Klukowska, Joanna · Khatri, Riju


CSCI-UA 102-000 (20832)01/24/2022 – 05/09/2022 Mon11:00 AM – 12:00 AM (Morning)at Washington SquareInstructed by Ilamathy, Swarna Swapna


CSCI-UA 102-000 (20829)01/24/2022 – 05/09/2022 Tue4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by Bharti, Sweta


CSCI-UA 102-000 (20835)01/24/2022 – 05/09/2022 Wed4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by Shah, Vivek


CSCI-UA 102-000 (20836)01/24/2022 – 05/09/2022 Mon11:00 AM – 12:00 AM (Morning)at Washington SquareInstructed by Muni, Sumanth Reddy


CSCI-UA 102-000 (20837)01/24/2022 – 05/09/2022 Mon8:00 AM – 9:00 AM (Morning)at Washington SquareInstructed by DiGiovanni, Lauren


CSCI-UA 102-000 (20838)01/24/2022 – 05/09/2022 Wed8:00 AM – 9:00 AM (Morning)at Washington SquareInstructed by R D, Harshitha


CSCI-UA 102-000 (20839)01/24/2022 – 05/09/2022 Mon2:00 PM – 3:00 PM (Early afternoon)at Washington SquareInstructed by Ilamathy, Swarna Swapna


CSCI-UA 102-000 (20840)01/24/2022 – 05/09/2022 Wed2:00 PM – 3:00 PM (Early afternoon)at Washington SquareInstructed by Cappadona, Joseph

Web Development and Programming (CSCI-UA 61)

Students that have successfully completed CSCI-UA 467 Applied Internet Technology are not eligible to take CSCI-UA 61 Web Development and Programming. This course will provide a practical approach to web technologies and programming. Students will build interactive, secure and powerful web programs. This course will cover client and server side technologies for the web.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2022)


CSCI-UA 61-000 (8622)01/24/2022 – 05/09/2022 Tue,Thu12:00 AM – 1:00 PM (Early afternoon)at Washington SquareInstructed by Kapp, Craig

Computer Systems Org (CSCI-UA 201)

This course covers the internal structure of computers, machine (assembly) language programming, and the use of pointers in high-level languages. Topics include the logical design of computers, computer architecture, the internal representation of data, instruction sets, and addressing logic, as well as pointers, structures, and other features of high-level languages that relate to assembly language. Programming assignments will be both in assembly language and other languages.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2022)


CSCI-UA 201-000 (7816)01/24/2022 – 05/09/2022 Mon,Wed9:00 AM – 10:00 AM (Morning)at Washington SquareInstructed by Moody, Douglas L


CSCI-UA 201-000 (7817)01/24/2022 – 05/09/2022 Tue9:00 AM – 10:00 AM (Morning)at Washington SquareInstructed by R D, Harshitha


CSCI-UA 201-000 (9059)01/24/2022 – 05/09/2022 Mon,Wed11:00 AM – 12:00 AM (Morning)at Washington SquareInstructed by Goldberg, Benjamin


CSCI-UA 201-000 (9060)01/24/2022 – 05/09/2022 Thu4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by Viswanathan, Adithya


CSCI-UA 201-000 (9188)01/24/2022 – 05/09/2022 Tue,Thu9:00 AM – 10:00 AM (Morning)at Washington SquareInstructed by Aljabbouli, Hasan


CSCI-UA 201-000 (9189)01/24/2022 – 05/09/2022 Wed8:00 AM – 9:00 AM (Morning)at Washington SquareInstructed by Gurrala, Jaya Amit Sai


CSCI-UA 201-000 (20841)01/24/2022 – 05/09/2022 Mon,Wed3:00 PM – 4:00 PM (Late afternoon)at Washington SquareInstructed by Franchitti, Jean-Claude


CSCI-UA 201-000 (20842)01/24/2022 – 05/09/2022 Tue4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by Gurrala, Jaya Amit Sai


CSCI-UA 201-000 (9910)01/24/2022 – 05/09/2022 Tue9:00 AM – 10:00 AM (Morning)at Washington SquareInstructed by Iyer, Shraddha


CSCI-UA 201-000 (9384)01/24/2022 – 05/09/2022 Thu4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by Zare, Samvid Avinash


CSCI-UA 201-000 (9911)01/24/2022 – 05/09/2022 Wed8:00 AM – 9:00 AM (Morning)at Washington SquareInstructed by Pabba, Rishika


CSCI-UA 201-000 (20843)01/24/2022 – 05/09/2022 Tue4:00 PM – 6:00 PM (Late afternoon)at Washington SquareInstructed by He, Yang

Database Design and Implementation (CSCI-UA 60)

Students that have successfully completed CSCI-UA 479 Data Management and Analysis are not eligible to take CSCI-UA 60 Database Design and Implementation. Introduces principles and applications of database design and working with data. Students use python as they prepare, analyze and work with data; SQL to study the principles and implementations of relational databases; and are introduced to other database paradigms such as NoSQL. Students apply these principles to computer systems in general and in their respective fields of interest.

Computer Science (Undergraduate)
4 credits – 15 Weeks

Sections (Spring 2022)


CSCI-UA 60-000 (7808)01/24/2022 – 05/09/2022 Tue,Thu12:00 AM – 1:00 PM (Early afternoon)at Washington SquareInstructed by Bloomberg, Amos

Introduction to Web Design and Computer Principles (CSCI-UA 4)

Prerequisite: Three years of high school mathematics or equivalent. No prior computing experience is assumed. Students with computing experience should consult with the computer science department before registering. Offered every semester. 4 points. This course introduces students to both the practice of web design and the basic principles of computer science. The practice component of the course covers not only web design but also current graphics and software tools. The principles section includes an overview of hardware and software, the history of computers, and a discussion of the impact of computers and the internet.

Computer Science (Undergraduate)
4 credits – 15 Weeks