Instructor: Patrick Tantalo
(http://www.cse.ucsc.edu/~ptantalo/)
Office: E2 257
Office Hours: MW 1:00 - 4:00
pm, or by appointment
Email: ptantalo@soe.ucsc.edu
Phone: 831-459-3898
Teaching Assistant:
Dimitris Skourtis <skourtis@soe.ucsc.edu>
Lab Sessions:
Monday
2:00 - 4:00 pm
JBE 105
Tuesday
12:00 - 2:00 pm JBE 105
Wednesday 3:00 - 5:00
pm
JBE 105
MSI Tutor: Ryan Drury <rdrury@ucsc.edu>
MSI Sessions:
Tuesday 6:00 - 7:15pm
Crown 104
Wednesday 7:00 - 8:10pm
JBE 169
Required
Text: Introduction
to Algorithms, by Cormen,
Leiserson, Rivest, & Stein. McGraw-Hill. (second or
third edition.)
Supplementary Texts:
Java Programming:
Java by Dissection (second edition) Ira Pohl & 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:
Unix
A Unix Tutorial from University of Washington.
A nice list of Unix Tutorials
Makefiles
Make - a tutorial
GNU make
Editors
An extensive list of Vi tutorials .
Free Software Foundation Gnu Emacs Manual (very long).
Programming in C
C Programming
Programming in ANSI C
Notes on Programming in C
Programming in Java
Java Documentation
Java Programming Resources
ITS-IC Resources
Instructional Computing
ITS-Home