{
adam
coding
}
~/home
~/about
~/projects
~/blog
~/tracker
~/uses
~/contact
☀️
~/home
~/about
~/projects
~/blog
~/tracker
~/uses
~/contact
☀️
DSA Tracker
0%
Apr 07 →
Jul 20, 2026
on track
Week 16: Linked Lists & Trees
| Phase 6: Fast Track — Core Patterns
Day 1-2: Linked Lists
2-3 hours
📚 Learning
Iterative reversal O(n) O(1) space
Recursive reversal O(n) O(n) call stack
Iterative merge with dummy node O(n+m)
Brute-force: store visited nodes in set O(n) space
Optimal: Floyd's fast/slow pointer O(1) space
Brute-force: two-pass (count length, then remove) O(n)
Optimal: one-pass with two pointers n apart O(n)
🔗 LeetCode
206. Reverse Linked List
Easy
21. Merge Two Sorted Lists
Easy
141. Linked List Cycle
Easy
19. Remove Nth Node From End of List
Medium
📝 Reflection / Notes:
Day 3-5: Trees
3-4 hours
📚 Learning
Recursive DFS O(n) — base case: null → 0
Iterative BFS with queue O(n)
Recursive swap left/right O(n)
Brute-force: in-order traversal → check sorted array O(n) extra space
Optimal: recursive with min/max bounds O(n) O(h) space
Brute-force: store root-to-node paths, compare O(n) space
Optimal: single recursive traversal O(n) O(h)
BFS level-by-level with queue O(n)
Brute-force: check every pair of nodes O(n²)
Optimal: single DFS tracking diameter O(n)
🔗 LeetCode
104. Maximum Depth of Binary Tree
Easy
226. Invert Binary Tree
Easy
98. Validate Binary Search Tree
Medium
236. Lowest Common Ancestor of Binary Tree
Medium
102. Binary Tree Level Order Traversal
Medium
543. Diameter of Binary Tree
Easy
📝 Reflection / Notes:
Day 6-7: Review & Timed Practice
2-3 hours
📚 Learning
Re-solve all Easy problems without hints (10 min each)
Re-solve all Medium problems without hints (20 min each)
For each problem: state brute-force complexity, then optimal
🔄 Review
Two Sum — hash map approach
3Sum — sort + two pointers
Reverse Linked List — iterative
Validate BST — recursive bounds
📝 Reflection / Notes: