Chapter 1. Arrays and Strings
1.1 Unique Characters of a String
Chapter 2. Linked Lists
2.1 Remove Duplicates from Unsorted List
2.2 Kth to Last Element of Linked List
2.3 Delete Node in a Linked List
Chapter 3. Stacks and Queues
3.1 Implement Three Stacks using Array
3.5 Implement Queue using Two Stacks
Chapter 4. Trees and Graphs
4.2 Route between Two Nodes in Directed Graph
4.3 Create Minimal Binary Search Tree
4.4 Create List at Each Depth of Binary Tree
4.5 Validate Binary Search Tree
4.7 Lowest Common Ancestor of a Binary Search Tree
Chapter 5. Bit Manipulation
5.2 Binary Representation of Real Number
5.3 Next Binary Representation
5.4 Explain Expression ((n & (n-1)) == 0)
Chapter 6. Brain Teasers
6.4 Blue Eyes People on Island
Chapter 7. Mathematics and Probability
7.4 Implement Multiply Subtract and Divide
7.5 A Line Cut Two Squares in Half
7.6 The Line Passes the Most Number of Points
7.7 The Number with Only Prime Factors
Chapter 8 Object-Oriented Design
Chapter 9. Recursion and Dynamic Programming
9.11 Parenthesize the Expression
Chapter 10. Scalability and Memory Limits
10.2 Data Structures for Large Social Network
10.3 Integer not Contain in the File
10.4 Find All Duplicates Elements
Chapter 11. Sorting and Searching
11.3 Search in Rotated Sorted Array
11.5 Search Array with Empty Strings
11.7 Tower of People in Circus
Chapter 12. Testing
12.3 Test Move Method in a Chess Game
Chapter 13. C and C++
13.2 Compare Hash Table and STL Map
13.4 Depp Copy and Shallow Copy
13.9 Aligned Malloc and Free Function
Chapter 14. Java
Chapter 15. Databases
Chapter 16 Threads and Locks
Chapter 17 Moderate
Chapter 18 Hard