InfoCoBuild

CS 61B: Data Structures and Advanced Programming

CS 61B: Data Structures and Advanced Programming (Fall 2011, UC Berkeley). Taught by Professor Paul Hilfinger, this course discusses data structures and advanced programming. Fundamental dynamic data structures, including linear lists, queues, trees, and other linked structures; arrays strings, and hash tables. Storage management. Elementary principles of software engineering. Abstract data types. Algorithms for sorting and searching. Introduction to the Java programming language.

Introduction


Lecture 01 - Course Introduction
Lecture 02 - Developing a Simple Program
Lecture 03 - More on Simple Programs
Lecture 04 - Values and Containers
Lecture 05 - Simple Pointer Manipulation
Lecture 06 - Arrays
Lecture 07 - Object-Based Programming
Lecture 08 - Object-Oriented Mechanisms
Lecture 09 - Object-Oriented Mechanisms, Interfaces and Abstract Classes
Lecture 10 - Interfaces and Abstract Classes (cont.)
Lecture 11 - Examples of Interfaces
Lecture 12 - Project Concepts, Exceptions
Lecture 13 - The Access Rules, Importing
Lecture 14 - Nesting Classes, Inner Classes, Integers
Lecture 15 - Integers (cont.), Algorithmic Analysis
Lecture 16 - Algorithmic Analysis (cont.)
Lecture 17 - Algorithmic Analysis (cont.), Collections Overview
Lecture 18 - Collections Overview, Sequence Implementation
Lecture 21 - Stack and Recursion, Trees
Lecture 22 - Trees (cont.)
Lecture 23 - Backtracking Search, Game Trees
Lecture 24 - Java Support for Generic Programming
Lecture 25 - Priority Queues, Range Queries
Lecture 26 - Hashing
Lecture 28 - Sorting
Lecture 29 - Sorting (cont.), Balanced Search Structures
Lecture 30 - Balanced Search Structures (cont.)
Lecture 33 - Graphs Structures
Lecture 34 - Graphs: Minimal Spanning Trees, Union-Find
Lecture 35 - Dynamic Programming
Lecture 36 - Enumeration Types, Threads and Concurrency
Lecture 37 - Concurrency, Interrupts
Lecture 38 - Assorted Topics
Lecture 39 - Course Summary

References
CS61B: Data Structures and Advanced Programming, Fall 2011
Instructor: Professor Paul Hilfinger. Lecture Notes. Java Library Documentation. Data Structures (Into Java). General Course Information. A Java Reference.