## Learning Outcomes

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

- Explain what is meant by
*contamination*of open address hash tables. - Understand
**rehashing**well enough to implement it. - Compute the
**load factor**of a hash table. - Determine table size and when to rehash.
- Analyze efficiency of open address hash tables.
- Describe primary (and secondary)
**clustering effect**of linear probing. - Describe other probing strategies (quadratic, double hashing, …) for open address hash table.
- Differentiate
**chaining**collision resolution from open addressing. - Analyze efficiency of separate chaining hash table.

## Lecture Plan

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

- Hash Table: Contamination
- Hash Table: Rehash
- Hash Table: Load Factor
- Hash Table: Table Size
- Linear Probing: Analysis
- Linear Probing: Primary Clustering⚡
- Open Addressing: Quadratic Probing
- Quadratic Probing: Exercise⚡
- Open Addressing: Other Probing Strategies
- Collision Resolution: Chaining
- Chaining: Comparison to Open Addressing
- Chaining: Analysis

Lessons marked with ⚡ contain exercise/activity.