## Learning Outcomes

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

- Understand and appreciate why we do asymptotic analysis using
**Big Oh**notation. - Use Big Oh notation to
**describe asymptotic running time**of a program when you are given the program code or its precise running time as a function of input size. - Use Big Oh notation to describe the asymptotic running time of the operations of the data structures we have implemented so far.
- Understand Big Oh (asymptotic) notation groups functions into a set of classes.
- Enumerate
**common running time functions**when the runtime is described in asymptotic (Big Oh) notation. - Determine the
**asymptotic growth rates**of a given function using Big Oh notation. **Rank**asymptotic complexities from smallest to largest.

## Lecture Plan

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

- Asymptotic Analysis: Recap
- Asymptotic Analysis: Big Oh Notation
- Big Oh Notation: The Gist!
- Big Oh Notation: Exercise⚡
- Asymptotic Runtime: Example I⚡
- Asymptotic Runtime: Example II⚡
- Asymptotic Runtime: Example III⚡
- Asymptotic Runtime: Example IV⚡
- Asymptotic Runtime: Example V⚡
- Asymptotic Runtime: Example VI⚡
- Asymptotic Runtime: Example VII⚡
- Asymptotic Runtime: Example IIX⚡
- Asymptotic Runtime: Example IX⚡
- Asymptotic Runtime: Classes of runtime functions
- Asymptotic Order of Growth: Example⚡
- Asymptotic Order of Growth: Common Running Times⚡
- Asymptotic Order of Growth: Exercise I⚡
- Asymptotic Order of Growth: Exercise II⚡

Lessons marked with ⚡ contain exercise/activity.