University of Puget Sound - Fall 2008
CSCI261 Computer Science II (algorithms)

Class Periods and Exam Schedule
Section Class times Mid-term exam Final exam
CSCI261A
Computer Science II (Algorithms)
_MT_TF_ 1400-1450 TH391
TBD May 13 16:00-18:00

Catalog description

This course is a continuation of the topics introduced in CSCI 161. It provides an introduction to the study of fundamental data structures and their associated algorithms. Students learn how to choose appropriate data structures and algorithms for particular problems. They learn about lists, stacks, queues, trees, sorting, searching, abstract data types, and object-oriented programming using an object-oriented programming language.

What we're really going to study:

The above really means: how to make programs run faster by writing smarter programs.

Textbook

Introduction to Algorithms, 2nd edition by Thomas Cormen, Charles Leiserson, Ronald Rivest, Clifford Stein McGraw-Hill Science/Engineering/Math; (December 16, 2003) ISBN-13: 978-0072970548 ISBN-10: 0072970545 This book is also available in what's called "International Edition" which is a trade paperback published (or at least distributed) outside of the United States. It's unlikely that we'll cover even half the contents, but this text is regarded as one of the standards, so it's likely to stay within easy reach as long as you're writing programs.

Other worthwhile reading:

Other Resources

Grading

Final grades will be based on the following components:

Final exam20%
Mid-term exam15%
Attendence&participation5%
Pop quizes?%
Programming assignments?%
Exercises?%

Tutoring

There are Computer Science tutors available in the Thompson 409 lab in early evenings five days a week (Sunday through Thursday). These tutors may be able to help you with some of the programming issues you'll face.

Lecture Schedule

This is only an overview of the course sequence & schedule. As the situation demands, we may slow down a bit, and if the situation permits, we may speed up a bit. More dynamic content such as notes, discussions, assignments, etc., will be found on the class' Moodle page.

On the nature of changing schedules:

It was once remarked that a design wasn't frozen so much as it was becoming ever hardening slush.

In much the same way the content of this class is not fixed. The above schedule is an approximation, but the emphasis of the lectures1 may change in response to your questions. I may not always find the best explanation or example for you, so if you don't understand something, ask questions. It's not always obvious how things work, and sometimes the obvious is wrong, so experiment. You are responsible to get as much out of this class as you can!
1 Lectures can be deadly boring. Class periods can be much more interesting if they become discussion periods. I encourage interaction. If you're totally overwhelmed, call out MEGO. That'll be a strong hint to me that I've not taken sufficient care in explaining something, so I should back-up a bit and figure out where you (and likely others) got lost.


CSCI261A/index.html was last edited by Randolph Bentson, on 2009/02/08T19:06:36-08:00
This course syllabus is a work in progress, so be sure to visit again in the near future.

Valid HTML 4.01 Strict Valid CSS!