CS 61B: Data Structures and Advanced Programming
CS 61B: Data Structures and Advanced Programming (Fall 2014, UC Berkeley). Instructor: 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.
Go to the Course Home or watch other lectures:
Lecture 01 - Course Introduction |
Lecture 02 - Developing a Simple Program |
Lecture 03 - Developing a Sort, Unit Testing |
Lecture 04 - Values and Containers |
Lecture 05 - Simple Pointer Manipulation |
Lecture 06 - Arrays |
Lecture 07 - Arrays (cont.), Object-Based Programming |
Lecture 08 - Object-Oriented Mechanisms |
Lecture 09 - Interfaces and Abstract Classes |
Lecture 10 - Abstract Methods and Classes (cont.) |
Lecture 11 - Examples of Interfaces |
Lecture 12 - Misc. Support for Abstraction; Exceptions |
Lecture 13 - Misc. Support for Abstraction (cont.) |
Lecture 14 - Numbers |
Lecture 15 - Numbers (cont.), Algorithmic Analysis I |
Lecture 16 - Algorithmic Analysis II |
Lecture 17 - Collections Overview, Sequence Implementation |
Lecture 18 - Sequence Implementation (cont.) |
Lecture 19 |
Lecture 20 - Sequence Implementation (cont.), Trees |
Lecture 21 - Trees (cont.) |
Lecture 22 - Trees (cont.), Backtracking Search, Game Trees |
Lecture 23 - Game Trees (cont.), Generic Programming |
Lecture 24 - Generic Programming (cont.), Priority Queues, Range Queries |
Lecture 25 - Range Queries (cont.), Hashing |
Lecture 26 - Hashing (cont.), Sorting |
Lecture 27 - Sorting II |
Lecture 28 - Sorting III |
Lecture 29 - Balanced Search Structures |
Lecture 30 - Balanced Search Structures (cont.) |
Lecture 31 - Representing Tries, Summary/Review |
Lecture 32 - Review |
Lecture 33 - Pseudo-Random Sequences |
Lecture 34 - Introduction to Graphs |
Lecture 35 - Graphs Traversals, Shortest Paths |
Lecture 36 - Shortest Paths (cont.), A* Search, Minimal Spanning Trees |
Lecture 37 - Minimal Spanning Trees (cont.), Union Find, Dynamic Programming |
Lecture 38 - Dynamic Programming, Storage Management |
Lecture 39 - Anatomy of a Version-Control System |
Lecture 40 - Compression |
Lecture 41 - Course Summary |