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:
- Remove Even Integers from Array - https://leetcode.com/problems/remove-element/solution/
- Merge Two Sorted Arrays
- First Non-Repeating Integer in an Array
- Find Second Maximum Value in an Array
Brush up your Linked List concepts with questions like:
- Find Length of Linked List
- Search in Singly Linked List
- Reverse a Linked List https://leetcode.com/problems/reverse-linked-list/solution/
- Find Middle Value of Linked List
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:
- Total number of words in Trie
- Find all words stored in Trie https://leetcode.com/problems/implement-trie-prefix-tree/solution/
Practice basic Heap problems:
- Find k smallest elements in a list https://www.geeksforgeeks.org/k-largestor-smallest-elements-in-an-array/
- Find k largest elements in an array
- Be aware of Toronto Public Library resources on programming
- Evaluate the select algorithm solutions. Understand the way we're expected to talk about them
- Discuss proactive networking strategies
- What courses on TPL could you take?
- linkedin learning
- O'Reilly online
- Overdrive audiobooks
- External resources for Senior developers https://dotnet.microsoft.com/learn/dotnet/architecture-guides
- Note the multitude of ways to solve some problems
- Discuss library resources https://www.torontopubliclibrary.ca/
- Point to MS docs on architecture
- Go through architecture documentation
- Check some Algorithm solutions
- Notes for next time: draw out a solution to make this clear https://leetcode.com/problems/remove-element/solution/
- https://www.youtube.com/watch?v=2AdzmA1IC1k easy - find a judge
- https://www.youtube.com/watch?v=ZwDDLAeeBM0 easy - robber
- https://www.youtube.com/watch?v=SA867FvqHrM medium - rotate image
- Consider trying to join the Rands leadership slack https://randsinrepose.com/welcome-to-rands-leadership-slack/
- Choose a book from TPL (or local library if outside Toronto)
- Check course list on linkedin learning choose one to start on
- Continue algorithm practice. Solve one a day.