1. CS 61B Lecture 1 - Course Overview

  2. CS 61B Lecture 2: Using Objects

  3. CS 61B Lecture 3: Defining Classes

  4. CS 61B Lecture 4: Types and Conditionals

  5. CS 61B Lecture 5: Iteration and Arrays I

  6. CS 61B Lecture 6: Iteration and Arrays II

  7. CS 61B Lecture 7: Linked Lists I

  8. CS 61B Lecture 8: Linked Lists II

  9. CS 61B Lecture 9: Stack Frames

  10. CS 61B Lecture 10: Testing

  11. CS 61B Lecture 11: Inheritances

  12. CS 61B Lecture 12: Abstract Classes

  13. CS 61B Lecture 13: Java Packages

  14. CS 61B Lecture 14: Exceptions

  15. CS 61B Lecture 15: More Java

  16. CS 61B Lecture 16: Game Trees

  17. CS 61B Lecture 17: Encapsulation

  18. CS 61B Lecture 18: Encapsulated Lists

  19. CS 61B Lecture 19: Asymptotic Analysis

  20. CS 61B Lecture 20: Algorithm Analysis

  21. CS 61B Lecture 21: Hash Tables

  22. CS 61B Lecture 22: Stacks and Queues

  23. CS 61B Lecture 23: Trees and Traversals

  24. CS 61B Lecture 24: Priority Queues

  25. CS 61B Lecture 25: Binary Search Trees

  26. CS 61B Lecture 26: Balanced Search Trees

  27. CS 61B Lecture 27: Graphs

  28. CS 61B Lecture 28: Weighted Graphs

  29. CS 61B Lecture 29: Sorting I

  30. CS 61B Lecture 30: Sorting II

  31. CS 61B Lecture 31: Disjoint Sets

  32. CS 61B Lecture 32: Sorting III

  33. CS 61B Lecture 33: Sorting V

  34. CS 61B Lecture 34: Splay Trees

  35. CS 61B Lecture 35: Amortized Analysis

  36. CS 61B Lecture 36: Randomized Analysis

  37. CS 61B Lecture 37: Expression Parsing

  38. CS 61B Lecture 38: Garbage Collection

  39. CS 61B Lecture 39: Augmenting Data Structures