Skip to content

Latest commit

 

History

History
23 lines (12 loc) · 1.45 KB

File metadata and controls

23 lines (12 loc) · 1.45 KB

Session 3: Complexity and Performance

This session focuses on algorithm complexity and performance in computer science. In particular, we will discuss lists and collections, and how to optimally search, sort and manipulate these sets of items.

Outline

The agenda for this session will be as follows:

  1. Introduction: We introduce several key concepts via a discussion of sorting. This includes algorithms, performance, scale, and complexity.

  2. Optimization: This initial discussion will cover the concept of optimization, considerations before optimizing, and how to effectively optimize.

  3. Contacts List: We will use the example of building out a Contacts List (similiar to Facebook Messenger) to discuss what will need to be considered when optimizing for performance.

  4. Complexity: Discussing Linear Search to help us understand algorithms and how to approach time complexities of algorithms

  5. Sorting: Building on the previous chapter, we discuss sorting algorithms and some considerations when attempting to keep a collection ordered.

  6. Libraries: Discussing some useful libraries and its methods that uses these searching and sorting algorithms

  7. Space & Time: In computer science, when we say 'Space and Time' what we really mean is 'Memory' and 'Running Time'.

  8. Resources: Additional resources that may be helpful.