Introduction
This course continues the broad
introduction to computer science begun in CS21, providing a general
background for further study in the field. By concentrating on
data structures and algorithms, you will obtain the basic building
blocks by which all large software projects are built. These
topics are central to every sub-discipline in computer science, and
also connect to central concepts across the sciences. Topics to be
covered include object-oriented programming in C++, advanced data
structures (such as priority queues, trees, hash tables, and
graphs), advanced algorithms, as well as software design and
verification. At the end of this course, you will have obtained
the ability to successfully analyze problems in the discipline.
You will also take your first steps towards developing the skills
necessary to synthesize and evaluate the most fundamental questions
in the field.
Course Basics
Schedule
Lecture (Lisa Meeden): |
Tue., Thu. 8:30 - 9:45am, SCI 199 (Cunniff Hall) |
Lecture (Joshua Brody): |
Tue., Thu. 9:55 - 11:10am, SCI 199 (Cunniff Hall) |
Lab A (Lisa Meeden): |
Thursday 1:05 - 2:35pm, SCI 256 |
Lab B (Lisa Meeden): |
Thursday 2:45 - 4:15pm, SCI 256 |
Lab C (Joshua Brody): |
Thursday 2:45 - 4:15pm, Clothier 016 |
Lab D (Gautam Mohan): |
Friday 2:00 - 3:30pm, SCI 256 |
Contact Information
Professor: |
Lisa Meeden |
Email: |
lmeeden1 at swarthmore.edu |
Office: |
SCI 243 |
Professor: |
Joshua Brody |
Email: |
jbrody1 at swarthmore.edu |
Office: |
SCI 260 |
Lecturer: |
Gautam Mohan |
Email: |
smohan1 at swarthmore.edu |
Office: |
SCI 262A |