Technical Interview Notes
INTRODUCTION
About
SEARCHING
1. Binary Search
1.1 Find First/Last/Index of Target
[E] Heaters
[M] H-Index
[M] Longest Increasing Subsequence
[M] Find Right Interval
[M] Minimum Size Subarray Sum
[M] Is Subsequence
[H] Russian Doll Envelopes
[H] Smallest Rectangle Enclosing Black Pixels
[H] Split Array Largest Sum*
[M] Maximum Number in Mountain Sequence
[M] K Closest Numbers In Sorted Array
1.2 Search In Rotated Sorted Array
[H] Find Minimum in Rotated Sorted Array II
1.3 Adopted Similar Terminology
[M] Search a 2D Matrix II
[M] Find the Duplicate Number
[M] Kth Smallest Element in a BST
[M] 4Sum II
[M] Kth Smallest Element in a Sorted Matrix
[M] Divide Two Integers
[M] Count Complete Tree Nodes*
[H] Dungeon Game
[H] Max Sum of Rectangle No Larger Than K*
[H] Median of Two Sorted Arrays
1.4 Miscellaneous
[E] Drop Eggs
2. DFS
3. BFS
DATA STRUCTURES
1. Primitive Types
Integer
Character
2. Linear
Array
[E] Two Sum
String
Palindrome Related
[E] Longest Palindrome
Anagrams Related
[E] Valid Anagram
[E] Find All Anagrams in a String
[M] Group Anagrams
[E] Valid Parentheses
Linked List
[M] Copy List with Random Pointer
[E] Reverse Linked List
[E] Palindrome Linked List
[E] Linked List Cycle
Stack
[E] Min Stack
Queue
Deque
Hash Table
[E] First Unique Character in a String
3. Non-Linear
Binary Tree
Path Sum Related
[E] Path Sum
[M] Path Sum II
[E] Path Sum III
[M] Binary Tree Maximum Path Sum II
[M] Binary Tree Maximum Path Sum
Traversal Related
[E] Binary Tree Level Order Traversal II
[M] Binary Tree Level Order Traversal
[M] Binary Tree Preorder Traversal
[M] Binary Tree Inorder Traversal
[H] Binary Tree Postorder Traversal
[M] Binary Tree Right Side View
[M] Flatten Binary Tree to Linked List
[M] Binary Tree Zigzag Level Order Traversal
Binary Search Tree
[E] Lowest Common Ancestor of a Binary Search Tree
[M] Validate Binary Search Tree
[M] Largest BST Subtree
[E] Diameter of Binary Tree
[E] Binary Tree Paths
[E] Minimum Depth of Binary Tree
[E] Maximum Depth of Binary Tree
[E] Symmetric Tree
[E] Same Tree
[E] Sum of Left Leaves
[E] Invert Binary Tree
[E] Balanced Binary Tree
[E] Lowest Common Ancestor II
[M] Lowest Common Ancestor III
[M] Lowest Common Ancestor of a Binary Tree
[M] Binary Tree Longest Consecutive Sequence
[E] Subtree with Maximum Average
[E] Minimum Subtree
[M] Find Leaves of Binary Tree
[M] Count Univalue Subtrees
[M] Sum Root to Leaf Numbers
[M] Populating Next Right Pointers in Each Node
[M] Populating Next Right Pointers in Each Node II
[M] Find Largest Value in Each Tree Row
[M] Most Frequent Subtree Sum
[M] Find Bottom Left Tree Value
Trie
Union Find/Disjoint Sets
Heap / Priority Queue
[E] Third Maximum Number
[M] K Closest Points
[M] High Five
[M] Kth Largest Element in an Array
FUNDAMENTALS
MATH
[E] Count Primes
[E] Rectangle Overlap
2D Array Skills
Bit Manipulation
Palindrome
Anagrams
ALGORITHMS
Divide & Conquer
Dynamic Programming
Two Pointers
[E] Window Sum
Powered by
GitBook
Stack
results matching "
"
No results matching "
"