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
- Monday, 7:35-8:40pm, 614 Schermerhorn
- Tuesday, 7:30-8:45pm, 413 Kent
- Friday, 2:00-3:30pm, 603 Hamilton
Final Exam (NEW)
- Section 1 (Daniel Bauer): Wednesday, December 16th, 4:10-6:10pm, 301 Pupin
- Section 2 (Larry Stead): Tuesday, December 22nd, 7:10-9:10pm, 614 Schermerhorn
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
- E-mail: Activate JavaScript to see this!
- Office hours: Mon 4-5pm in 705 CEPSR/Shapiro.
Larry Stead
- E-mail: Activate JavaScript to see this!
- Office hours: By appointment.
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 | Wed | Thu | Fri | |
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 |
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
- 50% - 7 homework assignments ( weakest dropped)
- 20% - Midterm Exam (in-class, tentative dates: 10/28, 10/29)
- 25% - Final Exam (12/16 or 12/22)
- 5% - Participation (class attendance, activity on Piazza)
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
- Piazza (anonymous course discussions, requires login)
- Courseworks Section 1 and Section 2 (requires login).
- Computer Science Department Academic Honesty Policy