Course Information

Time and Location (Lecture)

Section 1 (Daniel Bauer): Mondays and Wednesdays, 5:40pm - 6:55pm, Pupin 301. First day: 9/9
Section 2 (Larry Stead): Tuesdays and Thursdays, 5:40pm - 6:55pm, Schermerhorn 614. First day: 9/8

Recitation Sessions

Final Exam (NEW)

Course Content

COMS W3134 introduces fundamental ways of algorithmic problem solving by organizing and processing information efficiently. The course covers basic data types and structures (arrays, linked lists, stacks, queues, trees, sets, maps, and graphs) as well as programming techniques and algorithms that operate on them (sorting, searching, hashing, finding shortests paths,...). We will examine implementations of data structures and algorithms in Java. The course also covers the rudiments of analyzing space and time requirements of algorithms.

Instructors

Daniel Bauer

Larry Stead

Teaching Assistants

TA hour location: CS TA room for now. Please let us know if you have request/suggestions for other locations. TAs will announce changes to this schedule/location on Piazza.

Mon Tue WedThuFri
10am Zeynep Ejder Ken Aizawa
11am 11:30 Lilly Wang 11:45 Anna Lawson
12pm
1pm Evan Tarrh
2pm Javier Llaca Ruicong Xie 3:30 Linan
3pm
4pm Joshua Keough Martin Ong 4:30 Nick Mariconda
5pm
6pm
7pm Harsha Vemuri
CS3134 TAs

Prerequisites

Some experience with Object Oriented Programming in Java (for example COMS W1004). If you are not sure if you meet the course prerequisites, please contact the instructor before registering for this course.

Grading

Textbook

Weiss, Mark Allen (2012). Data Structures and Algorithm Analysis in Java. 3rd ed. Prentice Hall.
ISBN: 9780132576277
Available at the Columbia Bookstore and from your favorite book seller. On reserve at the Columbia Library.
You do not have to buy the textbook before class starts.

Syllabus

View a printable syllabus (PDF).

Important Links