Instructor:
Patrick Tantalo
(http://www.cse.ucsc.edu/~ptantalo/)
Office:
E2 257
Office Hours:
TTh 10:00-12:00, W
1:00-3:00, or by appointment
Email:
ptantalo@soe.ucsc.edu
Phone:
831-459-3898
Teaching Assistant:
Serdar
Sali
<sali@soe.ucsc.edu>
Lab Sessions:
Monday
3:00
-
5:00
pm
Baskin Engineering
105
Wednesday 6:00 - 8:00
pm
Baskin
Engineering 105
Thursday
5:00
-
7:00
pm
Baskin
Engineering 105
MSI Tutor:
Nathan Abercrombie <nabercro@ucsc.edu>
MSI Sessions:
Monday
12:30 -
1:40 pm Baskin
Engineering 169
Tuesday
4:00 - 5:15 pm Social Sciences
II 137
Wednesdy
3:30 - 4:40
pm Baskin Engineering
169
Required
Text: Introduction
to Algorithms, by Cormen,
Leiserson, Rivest, & Stein. MIT Press.
(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 SE 6 Documentation
Java Programming Resources
On Campus Resources
Jack Baskin School of Engineering
Information Technology Services
Learning Technology Services