2.4 KiB
Daily Practice Log
2026-05-17 - Week 1, Day 1
Today's Focus: Array basics and linear operations Learning Phase: Phase 1, Week 1 - Foundations Difficulty Level: Easy (Focus on understanding)
Problems Solved Today
1. Array Basics - Linear Search
Problem: Find target in unsorted array Approach: Simple linear traversal Time Complexity: O(n) Space Complexity: O(1) Learning Points:
- Linear search is straightforward for small arrays
- Important to check array bounds first
- Early termination when found improves average case
2. Array Basics - Frequency Counting
Problem: Count occurrences of each element Approach: Use hash map for frequency tracking Time Complexity: O(n) Space Complexity: O(n) Learning Points:
- Hash maps are perfect for frequency counting
- Need to handle empty array case
- Can use array indices if elements are within range
3. Array Basics - Find Minimum/Maximum
Problem: Find min and max in array Approach: Single pass comparison Time Complexity: O(n) Space Complexity: O(1) Learning Points:
- Can find both in one traversal
- Initialize with first element
- Update when finding smaller/larger values
Key Learnings
- Array traversal patterns: Start with simple loops, understand index management
- Basic operations: Search, count, find min/max are fundamental building blocks
- Edge cases: Always consider empty arrays, single element arrays
- Time complexity: Linear time is acceptable for basic operations on small datasets
Questions & Insights
- Question: When should I use linear search vs binary search? Answer: Linear search for unsorted data, binary search for sorted data
- Insight: Basic array operations are simple but crucial for understanding more complex algorithms
- Aha moment: Frequency counting is the foundation for many hash map problems
Tomorrow's Plan
Focus: Two pointers fundamentals Target Problems:
- Basic two sum (sorted array)
- Container with most water
- Array intersection (sorted)
Repository Connection
Related algorithms in lib/:
twoSum- Two pointers approachmaxArea- Container with most waterintersection- Array intersection
Practice Time: 45 minutes
Problems Completed: 3
Difficulty: Easy (3/3)
Success Rate: 100%
Next Steps: Practice more array basics, move to two pointers tomorrow