Teaches students to implement common data structures and the algorithms associated with each data structure, through progressively difficult exercises. Topics include big "O" notation; pointers, recursion (induction), and dynamic allocation; linked lists and list processing; stacks, queues, binary trees and binary search trees; simple sorting techniques and simple search techniques. Students will gain a working knowledge of the elements of the Java and C programming languages. Prior experience with Unix is assumed.
Enrollment Requirements
Prerequisite(s): course 11 or 12A or Computer Engineering 13. Concurrent enrollment in course 12M is required.
Class Notes
Visiting students, contact the instructor, Patrick Tantalo at ptantalo@ucsc.edu to petition for enrollment. Include proof of prerequisite material.