🚀 Blind 75 Journey Update – Phase 3 Completed (Sliding Window) I’ve successfully completed Phase 2: Two Pointers, and now I’ve moved through one of the most important interview patterns in DSA: 🔹 Phase 3 – Sliding Window (Completed) Problems covered: 1️⃣1️⃣ Longest Substring Without Repeating Characters (3) 1️⃣2️⃣ Longest Repeating Character Replacement (424) 1️⃣3️⃣ Minimum Window Substring (76) 💡 What I learned in this phase: This phase strengthened my understanding of one of the most powerful optimization techniques in arrays & strings: • Dynamic window expansion and contraction • Frequency tracking using HashMap / arrays • Maintaining optimal subarray/subsequence constraints • Handling real-time updates efficiently • Converting brute-force O(n²) → optimized O(n) solutions 🧠 Key Insight Sliding Window is not just a pattern — it's a mindset: Instead of recomputing, reuse previous computation while expanding and shrinking intelligently. It’s heavily used in: String processing problems Subarray optimization Streaming / real-time data problems 🎯 My Focus Moving Forward I’m continuing the Blind 75 journey in strict chronological order, focusing on: ✔ Pattern understanding before memorization ✔ Writing approach before coding ✔ Improving time & space optimization intuition ✔ Building strong DSA fundamentals step by step 🚀 Next Phase Coming Up: 🔹 Continuing Blind 75 with next patterns (Stack / Binary Search / Linked List depending on order) Consistency over speed. Depth over shortcuts. #Blind75 #SlidingWindow #DataStructures #Algorithms #LeetCode #CodingJourney #SoftwareEngineering #ProblemSolving #BuildInPublic #InterviewPreparation
Blind 75 Journey Update: Sliding Window Completed
More Relevant Posts
-
If you think attention is just "weights that tell the model what to focus on," you're in good company. You're also missing the entire point. Here are the three mistakes that kept me debugging transformer implementations for weeks. ⚠️ The usual traps 🚨 Mistake 1: Thinking attention replaces embeddings You're calculating attention over word positions, not the actual semantic content. The query, key, and value matrices are all learned transformations of your embeddings. Without good embeddings feeding in, your attention scores are just fancy noise on garbage. ⚠️ Mistake 2: Ignoring the scaling factor You skip the sqrt(d_k) division because "it's just a constant." Then your softmax saturates, gradients vanish, and your model trains like it's 2015. That scaling isn't optional, it's literally preventing your dot products from exploding as dimensions grow. Use it. 🔧 Mistake 3: Confusing attention scores with what gets output The attention weights are just coefficients. You're still doing a weighted sum of the value vectors. I've seen people try to interpret a 0.8 attention score as "the model understands this token" when really it just means that value vector gets 80% weight in the final representation. 🔑 The one thing to keep Attention is a routing mechanism, not magic. It's matrix multiplication with extra steps and a softmax. Once I stopped treating it like a black box and actually printed out those QK^T matrices at different layers, everything clicked. #AttentionMechanism #TransformerArchitecture #DeepLearning #MachineLearning
To view or add a comment, sign in
-
🚀 Day 49/100 – #100DaysOfDSA Today’s problem was Search a 2D Matrix II, a classic that tests how well you can leverage sorted data for efficient searching. 🔍 Key Idea: The matrix is sorted: Rows → left to right Columns → top to bottom Instead of scanning everything, I used an optimized approach starting from the top-right corner. ⚡ Approach: Start at top-right element If current > target → move left If current < target → move down Repeat until found or out of bounds 🚀 Performance: ⏱️ Time Complexity: O(m + n) 💾 Space Complexity: O(1) ✅ Accepted with strong performance (~97% beats) 💡 What I learned: How sorted properties can eliminate large search spaces The power of directional traversal in matrices Thinking beyond brute force leads to elegant solutions 💭 Reflection: This problem is a great reminder that sometimes the best solution isn’t about doing more—it’s about moving smarter. Consistency continues 💪🔥 #DSA #100DaysOfCode #Matrices #ProblemSolving #CodingJourney
To view or add a comment, sign in
-
-
Days 6/ 90: Structuring the Next Phase Took a quick breath to lock in core tree and graph traversals before shifting into higher gear. The technical breakdown: Evaluate Expression Tree: Straightforward post-order traversal (O(N) time / O(h) space). You evaluate the left and right subtrees recursively, then apply the parent node's operator (+, -, *, /) to the results. Closest Value in BST: Handled this iteratively to keep space complexity at O(1) constant instead of O(h) recursion stack frames. By exploiting the BST property, you eliminate half the remaining tree at each step, making it a clean O(log N) average-time operation. DFS on Graphs: Brushed up on standard adjacency list traversals, reinforcing the necessity of a visited set to prevent infinite cycles. The Self-Correction: I’ve noticed a pattern in my execution: I clear top-down structural problems (like expression trees), but bottom-up depth aggregations (like the Node Depths problem from Day 4) require a lot more mental friction. Identifying these blind spots early is exactly why I started this public log. The Strategy Pivot: The roadmap is changing. I’m going into a high-intensity DSA sprint for the next 4 days to completely clear out these structural blind spots. Once June hits, I’ll be balancing the daily DSA grind side-by-side with something new: building out a full-stack, real-time production project from scratch. Time to crank up the velocity. #DSA #ComputerScience #SoftwareEngineering #WebDevelopment
To view or add a comment, sign in
-
🚀 Blind 75 Journey Update – Phase 2 & Phase 3 Next I’ve successfully completed Phase 1: Arrays & Hashing, and now I’m moving forward in my structured preparation journey. The next focus areas will be: 🔹 Phase 2 – Two Pointers Problems I’ll be covering: 8️⃣ Valid Palindrome (125) 9️⃣ 3Sum (15) 🔟 Container With Most Water (11) This phase will strengthen: • Two-pointer technique • Sorting-based optimization • Handling edge cases efficiently • Reducing time complexity • Space-optimized solutions Two Pointers is a powerful pattern for array and string problems, especially when working with sorted data or symmetric structures. 🔹 Phase 3 – Sliding Window Problems I’ll be covering: 1️⃣1️⃣ Longest Substring Without Repeating Characters (3) 1️⃣2️⃣ Longest Repeating Character Replacement (424) 1️⃣3️⃣ Minimum Window Substring (76) This phase focuses on: • Dynamic window expansion & contraction • String optimization • Frequency tracking • Real-time constraint management • Advanced pattern recognition Sliding Window is one of the most important patterns in technical interviews, especially for string and subarray problems. 🎯 My Goal Instead of rushing through problems, I’m focusing on: ✔ Understanding the core pattern behind each question ✔ Writing approach before coding ✔ Comparing time & space complexity ✔ Building strong fundamentals step by step Consistency over speed. Depth over shortcuts. Continuing the Blind 75 journey with discipline and structured learning. 🚀 #Blind75 #TwoPointers #SlidingWindow #DataStructures #Algorithms #LeetCode #CodingJourney #SoftwareEngineering #ProblemSolving #BuildInPublic
To view or add a comment, sign in
-
Alright—let’s strip this down to something you can actually build this week, not a bloated “enterprise diagram.” 🧱 Minimal AI Agent Architecture (Buildable MVP) 🔻 Clean system diagram ⚡ The 5 components you actually need 1️⃣ Frontend (optional at start) Simple UI or just use Postman 👉 Start with: CLI or curl requests 2️⃣ Backend API (core entry point) Receives user request Calls your agent Use: FastAPI (Python) or Express (Node) 3️⃣ 🧩 Agent Layer (using LangChain OR CrewAI)...
To view or add a comment, sign in
-
Lurox 2.0 is here.. While everyone was vibe coding, I was reading CLRS at 2am trying to understand what actually happens when you hit search. 4-5 months of gathering knowledge. 2 months of execution. Last week, I showed you a search engine built in C from scratch. No libraries. O(1) lookup. Direct memory addressing. Sub-2ms latency. Curiosity doesn't stop at version 1. What got added: Semantic search — every question encoded into 384-dim vector space. Keywords don't matter. Meaning does. Cosine similarity finds what BM25 can't. Hybrid fusion — BM25 score + dense score, normalized, weighted by α. One number. Best of both worlds. RAG pipeline — top-5 results into Llama-3.3-70B. Grounded answer out. Doesn't know? It says so. No hallucination. Ever. 132 experiments. Found something nobody had measured before — result diversity peaks at α = 0.2–0.3. Not accuracy. Diversity. The point where hybrid search surfaces candidates neither BM25 nor semantic search could find alone. The numbers — → 0.17ms BM25 latency — C engine, untouched → Sub-17ms full hybrid pipeline → 4 retrieval modes — sparse, dense, hybrid, RAG → $0 infrastructure → Live. Right now. This is what happens when you don't stop at the textbook. Go break it. Try something weird. See what comes back. 🔗 lurox.netlify.app ⭐ https://lnkd.in/gQf-KC6n More incoming. #BuildInPublic #Research #InformationRetrieval #RAG #OpenSource
To view or add a comment, sign in
-
🚀 DSA Consistency Challenge – Day 76 Today’s focus was on Greedy Validation + String Simulation, where the real challenge wasn’t coding… but thinking in the right direction 🧠⚡ 🔴 1️⃣ Check if a Parentheses String Can Be Valid (Medium) 💡 Problem Twist: You’re allowed to change some characters — so instead of building the exact string, the real question is: 👉 Is it even possible to make it valid? 🧠 Approaches: 🔹 Brute Force Try all combinations for unlocked positions Validate each string ⛔ Exponential → Not practical 🔹 Stack-Based Approach Use stack for '(' and another for flexible indices Try to match ')' with available '(' or flexible positions Finally match remaining '(' with flexible positions (order matters!) ⏱️ O(n) time | O(n) space 🔹 Greedy (Optimal 💯) ✨ Key Insight: Validate instead of constructing Left → Right: Assume unlocked can act as '(' → Avoid excess ) Right → Left: Assume unlocked can act as ')' → Avoid excess ( 🔥 If both passes are valid → answer is TRUE ⏱️ O(n) time | O(1) space 🔴 2️⃣ Remove All Occurrences of a Substring (Medium) 💡 Core Idea: Removing a substring can create new occurrences → requires careful simulation 🧠 Approaches: 🔹 Brute Force (Find + Erase) Keep removing leftmost occurrence using find() ⛔ Inefficient due to repeated scanning ⏱️ O(n²) 🔹 Stack / String Simulation (Efficient ✅) Build result string step-by-step After each character: Check last m characters If match → remove instantly ✨ Works like a hidden stack ⏱️ O(n * m) | 🧠 O(n) 💭 Key Takeaways: Greedy isn’t always about max/min — sometimes it’s about validating feasibility Bidirectional traversal can simplify constraint-heavy problems Many string problems secretly use stack patterns Optimization often comes from avoiding repeated work
To view or add a comment, sign in
-
Pane Abstraction in the Text editor(Rust) that I am building [Phase II] This was really an interesting problem to solve, especially dynamic resizing with mouse dragging. And folks ,Data Structure and algorithms is important stuff and are actually used in real world projects. (Binary tree in this case [for more detail checkout the article]) I have documented the process here(Medium Article) : https://lnkd.in/gh-T5gnN If you directly wanna go through the code (PR) : https://lnkd.in/gc5PhEZ4 This is also my first article, so your time, thoughts and feedback are very much appreciated. Thank you! #Rust #SystemsProgramming #TextEditor #BuildInPublic
To view or add a comment, sign in
-
-
We provide examples for the tools people already love 🧠🔌 Fastest way in is copy-paste that runs. Examples cover sklearn-style flows, Hugging Face, diffusers, LLMs/agents—pick what matches your stack. You bring the problem; wiring measurement in shouldn’t feel like a side quest. 🔁 Next step → Framework examples hub: https://lnkd.in/dKxngqmW
To view or add a comment, sign in
-
🚀 Day 65 of 100 Days LeetCode Challenge Problem: Rotate Image Day 65 is a classic Matrix Manipulation + In-Place Transformation problem 🔥 💡 Key Insight: We must rotate the matrix: 90° clockwise ⚠️ Constraint: 👉 Must be done in-place 👉 No extra matrix allowed 🔍 Core Observation: A 90° clockwise rotation can be achieved in 2 steps: 1️⃣ Transpose the Matrix 2️⃣ Reverse Each Row 🔍 Step 1: Transpose Swap: matrix[i][j] ↔ matrix[j][i] This converts: Rows → Columns Example: 1 2 3 4 5 6 7 8 9 After transpose: 1 4 7 2 5 8 3 6 9 🔍 Step 2: Reverse Each Row After reversing: 7 4 1 8 5 2 9 6 3 ✅ Final rotated matrix 💡 Why This Works: Transpose mirrors across the diagonal Row reversal completes the clockwise rotation 🔥 Time Complexity: O(n²) ✅ In-place solution ✅ No extra matrix needed 🔥 What I Learned Today: Matrix transformations often combine simple operations In-place problems require careful swapping logic Transpose is an extremely important matrix technique 📈 Challenge Progress: Day 65/100 ✅ Marching steadily toward Day 100 🚀 🔍 Keywords: LeetCode, Matrix Manipulation, Arrays, In-Place Algorithm, Transpose Matrix, Grid Problems, DSA Practice, Problem Solving #100DaysOfCode #LeetCode #DSA #CodingChallenge #Matrix #Arrays #InPlaceAlgorithm #ProblemSolving #TechJourney #ProgrammerLife #SoftwareDeveloper #CodingLife #LearnToCode #Developers #Consistency #GrowthMindset #InterviewPrep
To view or add a comment, sign in
-
Explore related topics
- Approaches to Array Problem Solving for Coding Interviews
- Key DSA Patterns for Google and Twitter Interviews
- DSA Preparation Tips for First Interview Round
- LeetCode Array Problem Solving Techniques
- Common Algorithms for Coding Interviews
- Google SWE-II Data Structures Interview Preparation
- Strategies to Improve String Handling in Algorithms
- Improving String Repetition Performance in Programming