| Area | Task | Done |
|---|---|---|
| Algorithm | Implement additional sorting algorithms (e.g., Merge Sort, Quick Sort) as methods of the `Array` class. | |
| Project | Set up a simple build system with a Makefile or CMake. |
| Area | Task | Done |
|---|---|---|
| C++ | Convert `Array` class to a generic template (`Array<T>`) and merge into a header-only library. | |
| C++ | Implement Iterators (`begin()`, `end()`) for range-based `for` loop compatibility. | |
| Array | Implement dynamic resizing to handle overflow automatically. | |
| Project | Split monolithic code into `.h` (header) and `.cpp` (source) files. | |
| Testing | Add a simple unit test function to main and set up an XCTest target. | |
| C++ | Replace `using namespace std;` with specific `using` declarations for better practice. | |
| Algorithm | Implement and test various duplicate-finding methods (sorted, hashing, brute-force). |
| Resource | Task | Done |
|---|---|---|
| MIT | Lecture 3: Sets and Sorting | |
| MIT | Lecture 5: Linear Sorting | |
| CLRS | Chapters 6โ9: Heapsort, Quicksort, Sorting in Linear Time, Medians and Order Statistics | |
| Udemy | Basic (Bubble, Insertion, Selection), Advanced (Quick Sort, Merge Sort) | |
| Udemy | Specialized (Count Sort, Radix Sort, Shell Sort) | |
| CTCI | Read Chapter 10: Sorting and Searching | |
| LeetCode | Merge Sorted Array, Sort Colors (Dutch National Flag problem) | |
| MIT | Problem Set 2 ยท Solutions | |
| MIT | Recitation 3 | |
| MIT | Recitation 5 | |
| MIT | Problem Session 3 ยท Solutions |
| Resource | Task | Done |
|---|---|---|
| MIT | Lecture 4: Hashing | |
| CLRS | Chapter 11: Hash Tables | |
| Udemy | Hashing Intro, Chaining, Linear Probing, Quadratic Probing | |
| CTCI | Review Hash Table applications in Ch 1 (Arrays/Strings) and Ch 2 (Linked Lists) | |
| LeetCode | Group Anagrams, Ransom Note, Design HashMap | |
| MIT | Recitation 4 |
| Resource | Task | Done |
|---|---|---|
| CLRS | Chapter 10: Elementary Data Structures | |
| Udemy | Stack (Array/LL), Parenthesis Matching, Infix to Postfix | |
| Udemy | Queue (Array/Circular/LL), Priority Queues | |
| CTCI | Read Chapter 3: Stacks and Queues | |
| LeetCode | Valid Parentheses, Min Stack, Implement Queue using Stacks |