“What is a HashTrieStackFilterMap?“ A Data Structures & Algorithms Refresher For Everyone

This page will always be updated with the most recent version of this workshop.

The only version is 1.0 which was given at THAT Conference on August 5, 2019.

Slides/Code/Diagrams

My original workshop notes are here: Notes

Slides weren’t created but instead typed live in session. Those are here: From 8/5/2019 workshop

History

Date Version Venue
2019-08-05 1.0 THAT Conference

Abstract/Description

  • Are you about to go into job interviews where you’ll be asked technical questions?
  • Have you found you don’t really know the standard data structures or algorithms, or you have holes in your knowledge?
  • Has it been a long time since your computer science classes and you want a review session?

In this workshop, we’ll go over all the basics of standard data structures and algorithms. We’ll start at the beginning with different types of lists and build up from there. We’ll also cover the basics of popular algorithms and how to analyze operations of the data structure to assess a “Big O” runtime. We’ll break into teams to solve some technical problems. You will leave with a wealth of knowledge and resources to help you!

(While this won’t replace a whole CS degree, it’s designed to give you a boost in your CS learning journey.)

Talk Outline

  • Introductions
  • Part 1: The Basics (how they work, methodologies behind them, when to use them)
    • Arrays and Linked Lists
    • Stacks/Queues
    • Trees (and the many types)
    • Heaps
    • Hashmaps/hash tables/maps
    • Graphs
  • Part 2: The Algorithms (Big O, traversing data structures, improving some inefficiencies, common sort algorithms)
    • Big-O notation (what is it, how it works, why use it?)
    • Searching data structures
    • Common sorting algorithms (and why bother learning)
    • Pair problem solving
  • Part 3: Job Interviews and Strategies (what to focus attention on, how to think through problems, etc.)
    • Some strategies for yourself and the process
    • Some strategies for problem solving technical questions
    • Strategies for actually job hunting

We will make sure practice problems are mixed in as the problem solving is very important to learning the problems. I’ll have people pair (or triple) up to work on them. I’ll throw in plenty of breaks (as sitting and cramming this material isn’t always fun).