Interview Preparation
Interview Preparation
1.
Part I - Basics
2.
Sorting
2.1.
QuickSort
2.2.
QuickSelect
2.3.
RadixSort
3.
Java
3.1.
Java Volatile Keyword
4.
Part II - Leetcode/Lintcode
5.
Binary Tree Traversal
6.
Binary Search Tree
6.1.
Contains Duplicate III
7.
Binary Search
7.1.
Binary Search
7.2.
Find Peak Element
7.3.
Find Peak Element II
8.
Stack
8.1.
Evaluate Reverse Polish Notation
8.2.
Valid Parenthese
8.3.
Largest Rectangle in Histogram
8.4.
Simplify Path
8.5.
Expression Evaluation
8.6.
Expression Tree Build
8.7.
Convert Expression to Reverse Polish Notation
8.8.
Convert Expression to Polish Notation
9.
Hash Table
9.1.
Group Anagrams
9.2.
Shortest Word Distance II
9.3.
Two Sum
9.4.
Two Sum III
9.5.
Subarray Sum
9.6.
Subarray Sum To Target Value
9.7.
Submatrix Sum
10.
Hash Set
10.1.
Happy Number
10.2.
Contains Duplicate
10.3.
Contains Duplicate II
11.
Searching
11.1.
Topological Sorting
11.2.
Longest Increasing Continuous subsequence II
11.3.
Route Between Two Nodes in Graph
11.4.
K Sum II
11.5.
N Queens
11.6.
N Queens II
11.7.
Factor Combinations
12.
Sliding Window
12.1.
Longest Substring with At Most K Distinct Characters
12.2.
Longest Substring Without Repeating Characters
12.3.
Minimum Window Substring
13.
Two Pointers
13.1.
The Smallest Difference
13.2.
Sort Colors
13.3.
Two Sum II
13.4.
3 Sum
13.5.
3 Sum Smaller
13.6.
3 Sum Closet
13.7.
4 Sum
14.
Divide and Conquer
14.1.
Print Numbers by Recursion
14.2.
Coins In a Line
14.3.
Subtree
14.4.
Binary Tree Upside Down
15.
Segment Tree
15.1.
Segment Tree Build
15.2.
Segment Tree Query
15.3.
Segment Tree Query II
15.4.
Segment Tree Modify
15.5.
Count of Smaller Number
15.6.
Count of Smaller Number Before Itself
15.7.
Interval Sum
15.8.
Interval Sum II
15.9.
Interval Minimum Number
16.
Heap
16.1.
Kth Smallest Number in Sorted Matrix
16.2.
Sliding Window Median
16.3.
Number of Airplanes in the Sky
17.
Dynamic Programming
17.1.
Longest Increasing Continuous subsequence
17.2.
Maximum Subarray III
17.3.
Interleave String
17.4.
Ugly Number II
17.5.
Paint House
17.6.
K Sum
17.7.
Best Time to Buy and Sell Stock IV
18.
Greedy
18.1.
Maximum Subarray
18.2.
Maximum Subarray II
18.3.
Maximum Subarray Difference
18.4.
Delete Digits
18.5.
Candy
18.6.
Best Time to Buy and Sell Stock
18.7.
Best Time to Buy and Sell Stock II
18.8.
Best Time to Buy and Sell Stock III
19.
String
19.1.
strStr
19.2.
Length of Last Word
19.3.
Valid Number
19.4.
Valid Palindrome
19.5.
Add Binary
19.6.
Two Strings Are Anagrams
19.7.
Roman to Integer
19.8.
Integer to Roman
19.9.
Rotate String
19.10.
Reverse Words in a String
19.11.
Reverse Words in a String II
19.12.
Reverse Words in a String III
19.13.
Read N Characters Given Read4
19.14.
Read N Characters Given Read4 II
20.
Array
20.1.
Plus One
20.2.
Rotate Array
20.3.
Shortest Word Distance
20.4.
Shortest Word Distance III
21.
LinkedList
21.1.
Add Two Numbers
22.
Sorting
22.1.
Kth Largest Element
22.2.
Merge Intervals
22.3.
Sort Colors II
22.4.
Subarray Sum Closet
23.
Math & Bit Manipulation
23.1.
Gray Code
23.2.
Digit Counts
23.3.
Reverse Integer
23.4.
Divide Two Integers
23.5.
Permutation Index
23.6.
Permutation Index II
24.
Union Find
24.1.
Find the Weak Connected Component in the Directed Graph
24.2.
Number of Islands II
25.
Class Design
25.1.
Implement Trie
25.2.
Implement Queue by Two Stacks
25.3.
Min Stack
26.
Design Pattern
26.1.
Singleton
Powered by
GitBook
A
A
Serif
Sans
White
Sepia
Night
Share on Twitter
Share on Google
Share on Facebook
Share on Weibo
Share on Instapaper
Interview Preparation
Union Find Algorithm
Resources
Union-Find Algorithms - Princeton