CMPS 101
Algorithms and Abstract Data Types
Fall 2012

 
Final review session by TA Jennifer Parrish:  Monday 10:00-12:00 Baskin 105
Final Exam:  Thursday December 13  12:00-3:00 pm

Syllabus
Handouts   final review problems and selected solutions posted
Programming Assignments  
Homework Assignments   hw8 solutions posted      
Examples    
Lecture Notes
eCommons
Piazza

Time and Place: TTh   12:00-1:45   Thimann Lecture 001
Class Webpage: http://ic.ucsc.edu/~ptantalo/cmps101/Fall12/

Instructor: Patrick Tantalo (http://www.cse.ucsc.edu/~ptantalo/)
Office: E2 257
Office Hours: MWF 10:00 12:00, or by appointment
Email: ptantalo@soe.ucsc.edu
Phone: 831-459-3898

Teaching Assistant: Jennifer Parrish (jlparris@ucsc.edu)
Course Tutor: Shane Sims (sssims@ucsc.edu)
MSI Tutor: Andrew Ringer (ajringer@ucsc.edu) Schedule:  see below
LSS Subject Tutor: Alexander McCaleb (amccaleb@ucsc.edu) Schedule TBA

Lab Schedule:
Monday      10:00-12:00 pm   Baskin 105     Jennifer
Tuesday      4:00- 6:00 pm   Ming Ong PC    Shane
Wednesday   12:00- 4:00 pm   Baskin 105     Jennifer
Friday       9:00-11:00 am   Baskin 105     Shane

MSI Schedule:
Monday       5:00- 6:45 pm   Porter  246    Andrew
Thursday    10:00-11:45 am   
Porter  246    Andrew
Thursday     4:00- 5:45 pm   Merrill 002    Andrew


Required Text:
Introduction to Algorithms, by Cormen, Leiserson, Rivest, & Stein.  MIT Press.  (Second or Third Edition.)

Supplementary Texts:


Java Programming:
Java by Dissection (2nd edition) Ira Pohl and Charlie McDowell.  Lulu.com 2006.
Learning Java, by Patrick Niemeyer & Jonathan Knudsen, O'Reilly, 2000.
Java in a nutshell : a desktop quick reference, by David Flanagan, O'Reilly, 1997.
C Programming:
C for Java Programmers: A Primer, by Charlie McDowell,  Lulu.com 2006.
Problem solving and program design in C, by Jeri R. Hanly & Elliot B. Koffman, Addison-Wesley, 1999.
Algorithm Analysis:
Computer algorithms : introduction to design and analysis  by Sara Baase & Allen Van Gelder, Addison-Wesley, 2000.
Fundamentals of algorithmics, by Gilles Brassard & Paul Bratley, Prentice Hall, 1996.
The Algorithm Design Manual,  by Steven S. Skiena, Springer-Verlag, 1998.


Other Resources:

Programming in Java
Java SE 6 Documentation
Java Programming Resources

Programming in C

C Programming
Programming in ANSI C
Notes on Programming in C

Unix

A Unix Tutorial from University of Washington.
A nice list of Unix Tutorials

Makefiles
Simple Makefile Tutorial
GNU make

Editors
An extensive list of Vi tutorials .
Free Software Foundation Gnu Emacs Manual (very long).

On Campus Resources
Jack Baskin School of Engineering
Information Technology Services
Learning Technology Services


If you find any errors, please report them to: ptantalo@soe.ucsc.edu