Course Syllabus
Computer Science 12

Programming Methods in C

Fall 2008

Course Description

CS 12 is a second course in C programming within a Unix environment. Instruction and programming assignments focus on a selection of fundamental data structures and algorithms. Practice implementing and applying these data structures and algorithms is required for the course.

Pre-requisites

Course Goals

  1. Students expand their knowledge of the C programming language and Unix tools, and gain confidence in using them.
  2. Students learn to implement and apply abstract data types, including linked lists, stacks, queues, binary trees and tables.
  3. Students learn basic complexity analysis, and how to distinguish algorithms and data structures on the basis of efficiency.

Instructor

Dr. C. Michael Costanzo, mikec@cs.ucsb.edu
Office hours: Monday 12-12:50 and Wednesday 9-9:50, Phelps 1409B (enter through 1413)

Teaching Assistant

David Johnson, davidj@cs.ucsb.edu
Office hours: Thursday 11am-1pm, Phelps 1413

Instruction Schedule

Required Texts

Grading Policy

Course grades will be curved on the basis of the following distribution of credit:

Course Outline and Required Reading (Standish text unless noted; KR is Kernighan-Ritchie text)

Notes