Skip to content

Instantly share code, notes, and snippets.

View rogerwschmidt's full-sized avatar

Roger Schmidt rogerwschmidt

View GitHub Profile

Unit Testing Instructor Notes

Objectives

  • Explain the benefits of testing.
  • Describe the different types of tests.
  • Write tests using Mocha and Chai.
  • Explain what is Test Driven Development.
  • Reflect on and discuss the benefits of Test Driven Development.

Intro to memory instructor notes

Objectives

  • Explain what memory is.
  • Explain what the call stack is.
  • Explain what the heap is.
  • Explain what garbage collection is, and why it is important.

Explain what memory is.

Binary, ASCII, and UTF-8 Instructor notes

Objectives

  • Define Bits and Bytes
  • Convert decimal to binary and hexadecimal numbers.
  • Describe UTF-8 and ASCII, including the differences between the two.

Define Bits and Bytes

Big O notation instructor notes

  • Explain what Big O Notation is.
  • Explain why Big O Notation is useful
  • Calculate Big O.

What is Big O notation?

Turn to your neighbor and explain what Big O notations is.

Why is Big O notation important?

Sorting

Objectives

  • Implement a bubble sort algorithm
  • Implement a selection sort algorithm
  • Implement an insertion sort algorithm

Implement a bubble sort algorithm

  • Largest items bubble to the top.

Advanced sorting instructor notes

  • Implement a merge sort algorithm in Javascript
  • Implement a quick sort algorithm in Javascript

Implement a merge sort algorithm in Javascript

  • Manually work through the merge sort algorithm.
  • Implement merge sort.

Implement a quick sort algorithm in Javascript

OOP

  • Define what Object Oriented programming is
  • Explain why Object Oriented programming is important
  • Use Object Oriented Programming in ES6 to create a Person Object

Define what Object Oriented programming is

Turn to neighbor and explain what Object oriented programming is.

Explain why Object Oriented programming is important

Turn to neighbor and explain why Object oriented programming is important.

Linked List Instructor Notes

Objectives

  • Explain what Linked Lists are.
  • Describe why linked lists are important.
  • Draw the following actions on a singly linked and double linked list.
    • push
    • pop
    • shift
  • unshift

Stacks and Queues Instructor Notes

Objectives

  • Explain what stacks are
  • Define methods on a stack
  • Explain what queues are
  • Define what queues are

Explain what stacks are

Hash tables instructor notes

Objectives

  • Define a hash function
  • Explain how a hash table can be used to increase the performance of an algorithm

Define a hash function

Turn to your neighbot and define what a hash function is

Explain how a hash table can be used to increase the performance of an algorithm