## Learning Outcomes

At the end of this lecture, you’ll be able to:

- Illustrate the
**decision tree**corresponding to the binary search process. - Identify the various components of a (rooted)
**tree**structure. - Differentiate general (rooted) tree from a
**binary tree**. - Recognize the
*recursive structure*of tree. - Differentiate binary trees from binary search trees based on the
**complete ordering property**. - Recognize a tree is a
**non-linear***linked*structure. - Explain and trace the core operations of a Binary Search Tree.
- Implement the core operations of an OrderedSet efficiently with a Binary Search Tree.

## Lecture Plan

In this lecture, we'll cover the following lessons:

- Preface
- Binary Search: The Decision Tree
- Binary Search Tree: Is it a tree?
- Tree Components⚡
- Binary Tree⚡
- Binary Tree: A recursive structure
- Binary Search Tree⚡
- Binary Search Tree: Node Class
- BST Operation: Find⚡
- BST Operation: Insert (How it works)⚡
- BST Operation: Insert (Tracing)⚡
- BST Operation: Insert (Implementation)⚡

Lessons marked with ⚡ contain exercise/activity.