-
Chapter 1. Getting Ready
-
Chapter 2. Strategies For A Great Interview
-
Chapter 3. Conducting An Interview
-
Chapter 4. Primitive Types
-
Chapter 5. Arrays
- Boot-camp
- Dutch Flag Partition
- Increment an Arbitrary-precision Integer
- Multiply Two Arbitrary-precision Integers 12/17
- ...
-
Chapter 6. Strings
- Boot-camp 12/18
- Interconvert Strings and Integers 12/18
- Base Conversion 12/20
- Compute the Spreadsheet Column Encoding 12/20
- ...
-
Chapter 7. Linked Lists
- Boot-camp 01/09
- Merge Two Sorted Lists 01/09
- Reverse a Single Sublist 01/10 -> LC 92
- Test for Cyclicity 01/11 -> LC 141, 142
- ...
-
Chapter 8. Stacks and Queues
- Stack Boot-camp 01/12
- 8.1 Implement a Stack with max API 01/12 -> LC 155
- 8.2 Evaluate RPN Expressions 01/13 -> LC 150
- 8.3 Test a String over {} () [] for Wellformedness 01/17 -> LC 20
- ...
-
Chapter 9. Binary Trees
- Boot-camp 01/18
- 9.1 Test if Binary Tree is Height-balanced 01/18 -> LC 110, 104
- 9.2 Test if Binary Tree is Symmetric 01/20 -> LC 101
- 9.3 Compute the Lowest Common Ancestor in a Binary Tree 01/23 -> LC 93
- ...
- Note: Chapter 9 requires more practice
-
Chapter 10. Heaps
- Boot-camp 01/24
- 10.1 Merge Sorted Files 01/24
- 10.2 Sort an Increasing-Decreasing Array 01/25
- 10.3 Sort an Almost-Sorted Array 01/25
- ...
-
Chapter 11. Searching
- Boot-camp 01/26
- 11.1 Search a Sorted Array for First Occurrence of k 01/26 -> LC 34
- 11.2 Search a Sorted Array for Entry Equal to its Index 01/27 -> LC -> LC 1064
- 11.3 Search a Cyclically Sorted Array 01/27 -> LC 153
- ...
-
Chapter 12. Hash Tables
- Boot-camp 02/02
- 12.1 Test for Palindromic Permutation 02/02
- 12.2 Is an Anonymous Letter Constructible 02/07 -> LC 383
- 12.3 Implement an ISBN Cache 02/07A -> LC 146
- ...
-
Chapter 13. Sorting
- Boot-camp 02/09
- 13.1 Compute Intersection of Two Sorted Arrays 02/09
- 13.2 Merge Two Sorted Arrays 02/11 -> LC 88
- 13.3 Remove First-name Duplicates 02/11 -> LC 26
- ...
-
Chapter 14. Binary Search Trees
- Boot-camp 02/16
- 14.1 Test if a Binary Tree Satisfies the BST Property 02/16 -> LC 98
- 14.2 Find the First Key Greater Than a Given Value in a BST 02/17 -> None
- 14.3 Find the K Largest Elements in BST 02/18 -> LC 230
- ...
-
Chapter 15. Recursion
- Boot-camp 01/23
- 15.1 The Towers of Hanoi Problem 01/23
- 15.2 Generate All Non-attacking Places of n-Queens 01/24 -> LC 51 (Hard)
- 15.3 Generate Permutations 02/19 -> LC 46
- ...
-
Chapter 16. Dynamic Programming
-
Boot-camp 03/02
-
16.1 Count the Number of Score Combinations 03/03 -> LC 216
-
16.2 Compute the Levenshtein Distance
-
16.3 Count the Number of Ways to Traverse a 2D Array
-
...
-
Chapter 17. Greedy Algorithms and Invariants
- Boot-camp 03/16
- 17.1 Compute an Optimum Assignment of Tasks 03/16
- 17.2 Schedule to Minimize Waiting Time 03/17
- 17.3 The Interval Covering Problem 03/18
- ...
-
- 169. Majority Element 02/22 -> Boyer-Moore voting algorithm
- 88. Merge Sorted Array 03/04
- 49. Group Anagrams 03/05
- 46. Permutations 03/06
- 47. Permutations II 03/06