Data Structures (61B)

Data Structures (61B)

CS 61B is the next step in Berkeley's computer science course. Move into more detailed programmi

What You'll Learn

Data structures
Java
Learn about algorithms

About

The CS 61 series is an introduction to computer science, with particular emphasis on software and machines from a programmer's point of view. CS 61A covered high-level approaches to problem-solving, providing you with a variety of ways to organize solutions to programming problems as compositions of functions, collections of objects, or sets of rules. In CS 61B, we move to a somewhat more detailed (and to some extent, more basic) level of programming.

In 61A, the correctness of a program was our primary goal. In CS61B, we're concerned also with engineering. An engineer, it is said, is someone who can do for a dime what any fool can do for a dollar. Much of 61B will be concerned with the tradeoffs in time and memory for a variety of methods for structuring data. We'll also be concerned with the engineering knowledge and skills needed to build and maintain moderately large programs.

Is this the right course for me?

This is a course about data structures and programming methods. It happens to also teach Java, since it is hard to teach programming without a language. However, it is not intended as an exhaustive course on Java, the World-Wide Web, creating applets, user interfaces, graphics, or any of that fun stuff.

The CS 61B Spring 2015 website can be found here http://datastructur.es/sp15/index.html

39

Lessons

1

Modules

1

Reviews

Enroll for free

Enroll Now

Full course, no restrictions!

Modules

First Module
49:54 Intro, Hello World Java
50:34 Defining and using classes
48:43 References, Linked Lists
49:29 Testing
50:17 Binary and Bits, A 61C Preview
17:45 Node lists, sentinel nodes
28:57 Node lists, sentinel nodes II
50:20 Arrays, For Loops
47:27 Resizing Arrays, Lists vs. Arrays
53:55 Inheritance, Subtype Polymorphism
48:27 Abstract Classes, Interfaces
51:20 Higher-Order Functions, Callbacks, Comparators/Comparables
46:19 Environment Variables, Packages, Java Libraries
50:16 Generics, Conversion, Promotion
49:44 Exceptions, Iterator and Iterable
49:54 Java Loose Ends
51:32 Encapsulation, Delegation vs. Extension
47:70 Asymptotics I
45:48 Disjoint Sets
50:34 Asymptotics II
50:17 Asymptotics III
44:30 Binary Search Trees
50:53 Balanced BSTs
50:58 Hashing
52:52 Trees
49:30 Heaps
50:32 Selection Sort, Heapsort
51:27 Midterm Review
51:46 Insertion Sort, Shell's Sort, Implementations
50:13 Quicksort
50:12 Sorting Tradeoffs & Algorithmic Bounds
50:33 Radix Sorts
52:30 Tries
51:32 Graphs Intro
49:43 Graph Traversals
49:34 DFS vs. BFS, Shortest Paths
46:21 Minimum Spanning Trees
50:10 Compression
49:70 Impossible and Intractable Problems

Reviews

How It Works

Coursework

Coursework

Each course is like an interactive textbook with pre-recorded videos, quizzes and projects.
Peer Support

Peers

Connect with thousands of other learners to debate ideas, discuss course material, and get help mastering new concepts.
Certificate of Completion

Certificate

Earn official recognition for your work and share your success with friends, family, colleagues and future employers.

Your Teacher