Learning Outcomes
At the end of this lecture, you’ll be able to:
- Explain and trace the core operations of Map.
- Describe the difference between similar operations (
put
andinsert
). - Differentiate between similar data structures: Map, Dictionary, OrderedMap.
- Implement Map using an ArrayList internally.
- Implement OrderedMap using a BST (without balancing strategies).
- Describe what balance property is (in the context of BST structure).
- Identify the height and balance factor of binary search tree nodes.
- Differentiate binary trees, binary search trees and balanced binary search trees based on the structure (balance) and ordering properties.
Lecture Plan
In this lecture, we'll cover the following lessons:
- Map ADT: The Abstraction
- Map ADT: The Interface
- Map ADT: Array-based Implementation
- OrderedMap ADT: The Interface
- OrderedMap ADT: BST Implementation⚡
- BinarySearchTreeMap: Efficiency
- BinarySearchTreeMap: Balanced BST
- BBST: Balance Factor
- BBST: Exercise I⚡
- BBST: Exercise II⚡
- BBST: Height is O(log N)
Lessons marked with ⚡ contain exercise/activity.