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
15.6 Entity Relationship Diagram
Chapter 16 Threads and Locks
16.2 Measure Time in a Context Switch
Chapter 17 Moderate
17.7 English Phrase Describe Integer
17.8 Contiguous Sequence with Largest Sum
Chapter 18 Hard
18.3 Randomly Generate Integers
18.5 Shortest Distance between Two Words
18.6 Smallest One Million Numbers
18.9 Find and Maintain the Median Value
18.13 Largest Rectangle of Letters