Skip to content

Latest commit

 

History

History
82 lines (57 loc) · 3.39 KB

week-05.md

File metadata and controls

82 lines (57 loc) · 3.39 KB

WEEK 5: Algos in detail

Week ZERO Video

As you are familiarizing (or re-familiarizing) yourself with data structures, start practicing relatively simple coding problems associated with these data structures and algorithms.

These questions are typically not asked in interviews at big tech companies. Even if they are, they’re usually used as fizz-buzz type warm-up problems. Such questions are also common during phone interviews. However, practicing these coding interview questions will help you internalize the data structures and help you tackle the harder questions which you’ll be practicing a few weeks from now.

Brush up your array skills with questions like:

Brush up your Linked List concepts with questions like:

Brush up your Stack/Queue skills with questions like:

  • Sort values in Stack
  • Create Stack where min() returns minimum value in O(1)
  • Implement Two Stacks using one Array

Practice Tree Problems like:

  • Find minimum value in Binary Search Tree
  • Find Height of Binary Tree
  • Find kth maximum value in Binary Search Tree

Practice Graph Problems:

  • Implement Breadth First Search
  • Implement Depth First Search
  • Detect cycle in Graph

Practice basic Trie Problems:

Practice basic Heap problems:

Learning Objectives

  1. Be aware of Toronto Public Library resources on programming
  2. Evaluate the select algorithm solutions. Understand the way we're expected to talk about them
  3. Discuss proactive networking strategies

Discussion questions

  1. What courses on TPL could you take?
    • linkedin learning
    • O'Reilly online
    • Overdrive audiobooks
  2. External resources for Senior developers https://dotnet.microsoft.com/learn/dotnet/architecture-guides
  3. Note the multitude of ways to solve some problems

Lesson plan

  1. Discuss library resources https://www.torontopubliclibrary.ca/
  2. Point to MS docs on architecture
  3. Go through architecture documentation
  4. Check some Algorithm solutions
  5. Notes for next time: draw out a solution to make this clear https://leetcode.com/problems/remove-element/solution/
  6. Consider trying to join the Rands leadership slack https://randsinrepose.com/welcome-to-rands-leadership-slack/

Homework

  1. Choose a book from TPL (or local library if outside Toronto)
  2. Check course list on linkedin learning choose one to start on
  3. Continue algorithm practice. Solve one a day.