Please enable JavaScript.
Coggle requires JavaScript to display documents.
Master the Interview Click here for Course Link - Coggle Diagram
Master the Interview Click here for Course Link
🎁Graphs
Shortest Path?
🚀 Bellman-Ford
🚀 Dijkstra
Cyclic or Acyclic?
Weighted or Unweighted?
Graph Traversal?
O(n)
🚀 Breadth First Search (BFS)
🚀 Depth First Search (DFS)
Inorder
Postorder
Preorder
Directed or Undirected?
🎁Tree
Tree Traversal?
O(n)
Recursion?
Be mindful of Space Complexity! (Stack overflow)
🎁Linked List
🎁Singly Linked List
🎁Doubly Linked List
🎁Binary Tree
🎁Binary Search Tree
🎁Balanced BST
🎁AVL Tree
🎁Red Black Tree
🎁Heap
🎁Binary Heap
Priority Queue
🎁Trie
Dynamic Programming
🚀Memoization
🎁Hash Tables
**could be O(n) with hash collisions and dynamic array resizing but unlikely
Improve Time Complexity?
Fast Access O(1), tradeoff: more memory O(n)
Collision?
Linked List
🎁Arrays
Sorting? ~
O(N log N)
Radix Sort 🚀
Quick Sort 🚀
Heap Sort 🚀
Bubble Sort 🚀
Selection Sort 🚀
Insertion Sort 🚀
Merge Sort 🚀
Counting Sort 🚀
String question?
Turn it into an Array ~ split() 🚀
Static
Dynamic
** can be O(n) on expanding memory
Searching. Is it sorted?
Yes - Divide and Conquer -
Binary search O(log N)
🚀
No. Will sorting make it faster? If still no,
Linear Search
🚀
No. Is it a String? See if a
Trie
data structure helps
🎁Stacks
Array Stack
Linked List Stack
🎁Queues
Array Queue (BAD)
Linked List Queue