CS 47B. Data Structures

Current Schedule (Spring 2015)


Catalog Description: (1 unit, self-paced, graded) Iterators. Hashing, applied to strings and multi-dimensional structures. Heaps. Storage management. Design and implementation of a program containing hundreds of lines of code. Students with sufficient partial credit in CS 61B may, with the consent of the instructor, complete the credit in this course.

Prerequisites: A course in data structures, plus CS 9B or equivalent, in addition to consent of the instructor. Students will not receive credit for CS 61B taken after CS 47B, or for CS 47B taken after CS 61B.

Course objectives: Students who take CS 47B are expected to have had a course that familiarized them with the following: Arrays and linked structures, in particular with the efficiency tradeoffs between them; a variety of sorting algorithms for arrays and linked lists, including some 0(n log n) sorts; binary search trees; and stacks and queues.

Topics Covered: Course activities include programming assignments and quizzes; quizzes focus on low-level language details or programming techniques, while programming assignments are broader in scope. One of the programs is a substantial project comprising several hundred lines of code. The list of programming assignments appears below. All assignments use the Java programming language.

General Catalog

Undergraduate Student Learning Goals