Solutions are uploaded as .cpp files, complete with write-ups commented at the top of each file.
Write-ups contain the following sections, if applicable:
- Problem - a summary of the problem
- Implementation - an explanation of the solution
- Time complexity - the big-O time complexity of the solution, along with an explanation of why the solution suffers from that worst-case time complexity.
- Space complexity - the same as above, except for space instead of time.
- What could be done better? - An explanation of any improvements that might be made to the solution.
☑ | Chapter # | Chapter Name | # of problems |
---|---|---|---|
☑ | 1 | Arrays and Strings | 9 |
☑ | 2 | Linked Lists | 8 |
☑ | 3 | Stacks and Queues | 6 |
☑ | 4 | Trees and Graphs | 12 |
☑ | 5 | Bit Manipulation | 8 |
☐ | 6 | Math and Logic Puzzles | 10 |
☐ | 7 | Object-Oriented Design | 12 |
☐ | 8 | Recursion and Dynamic Programming | 14 |
☐ | 9 | System Design and Scalability | 8 |
☐ | 10 | Sorting and Searching | 11 |
☐ | 11 | Testing | 6 |
☐ | 12 | C and C++ | 11 |
☐ | 13 | Java | 8 |
☐ | 14 | Databases | 7 |
☐ | 15 | Threads and Locks | 7 |
☐ | 16 | Moderate | 26 |
☐ | 17 | Hard | 26 |