🎯 LeetCode — Day 3 | “Longest Substring Without Repeating Characters” (Medium, Java) 💭 Ever tried remembering all your passwords without repeating any character? That’s pretty much what this problem felt like 😅 Today’s challenge tested my patience and precision — finding the longest substring without repeating characters. 🧩 Key Idea: Use a sliding window with a HashMap to track character positions. Every time a duplicate appears, move the start pointer forward ->simple, elegant, efficient! ⚡ Result: ✅ Accepted | ⏱ Runtime: 0 ms 💪 Complexity: O(n) 💡 Logic: Focus on “expanding and shrinking” the window smartly Each day’s logic builds the next day’s confidence. #LeetCode #Day3 #Java #CodingJourney #ProblemSolving #DSA #TechMindset #Motivation
Solved LeetCode Day 3: Longest Substring Without Repeating Characters in Java
More Relevant Posts
-
Day 9 of Java 50 Days of Code Challenge Imagine you’re checking your contact list — name and number — and you want to print them neatly, one by one. That’s exactly what I learned today: how to loop through a Map in Java. Maps store key–value pairs, and there are different ways to read them. Today I practiced using for-each loops to go through keys, values, and entries. Lesson of the Day: > Looping through a Map feels like flipping through your phonebook — one contact at a time. Next, I’ll explore ArrayLists with user input — to make my programs more dynamic and interactive. #Java #50DaysOfCode #Day9 #LearningJourney #CodingStory #MapIteration #JavaCollections Here’s my little example: Guess the output
To view or add a comment, sign in
-
-
💻 Day 45 of #LeetCode Journey 🚀 ✅ Problem: Count and Say 📘 Language: Java 🔹 Status: Accepted (30/30 test cases passed) 🔹 Runtime: 4 ms | Beats 55.38% 🔹 Memory: 41.86 MB 🧠 Concept: This problem is about generating the n-th term in the “count and say” sequence. Each term is built by describing the previous term — count the number of digits and say them in order. 🧩 Approach: Start with "1". For each iteration, use a StringBuilder to construct the next sequence. Track consecutive digits using a counter. Append the count and digit when the sequence changes. 💡 Efficient string manipulation and iteration give optimal performance. 🔥 Every solved problem builds confidence. One step closer to mastering patterns in strings! #Day45 #LeetCode #Java #CodingChallenge #ProblemSolving #CountAndSay #50DaysOfCode
To view or add a comment, sign in
-
-
Deadlock in Java A Deadlock happens when two or more threads are blocked forever — waiting for each other’s resources. This usually occurs when each thread holds a lock and is waiting for another lock to be released. Example scenario: Thread A has Lock1 and waiting for Lock2 Thread B has Lock2 and waiting for Lock1 Both are stuck → this is DEADLOCK ❌ Why it happens? Because of circular dependency between threads. How to prevent it? Always acquire locks in same order Use tryLock() (ReentrantLock) Minimize synchronized blocks Avoid nested locks Conclusion Deadlocks can freeze your entire application. As developers, we must design our locking strategy carefully in multithreading to avoid such situations. #Java #Multithreading #Deadlock #ThreadLifeCycle #JavaDeveloper #LearningJourney #100DaysOfCode #TapAcademy 🚀
To view or add a comment, sign in
-
-
💡 𝗝𝗮𝘃𝗮/𝐒𝐩𝐫𝐢𝐧𝐠 𝐁𝐨𝐨𝐭 𝗧𝗶𝗽 - 𝗦𝘄𝗶𝘁𝗰𝗵 𝗘𝘅𝗽𝗿𝗲𝘀𝘀𝗶𝗼𝗻 💎 🕯 𝗧𝗿𝗮𝗱𝗶𝘁𝗶𝗼𝗻𝗮𝗹 𝗦𝘄𝗶𝘁𝗰𝗵 𝗦𝘁𝗮𝘁𝗲𝗺𝗲𝗻𝘁 The traditional switch statement has been part of Java since the beginning. It requires explicit break statements to prevent fall-through, which can lead to bugs if forgotten. Each case must contain statements that execute sequentially, making the code verbose and error-prone. 💡 𝗠𝗼𝗱𝗲𝗿𝗻 𝗦𝘄𝗶𝘁𝗰𝗵 𝗘𝘅𝗽𝗿𝗲𝘀𝘀𝗶𝗼𝗻 Switch expressions were introduced in Java 14 as a more concise and safe alternative. Using the -> syntax, you eliminate the need for break statements and can directly return values. Multiple cases can be grouped with commas, and the compiler enforces exhaustiveness for better safety. ✅ 𝗞𝗲𝘆 𝗕𝗲𝗻𝗲𝗳𝗶𝘁𝘀 ◾ No break statements, safer and cleaner code. ◾ Direct value assignment, treat switch as an expression. ◾ Multiple labels with comma separation. ◾ Compiler exhaustiveness checks, fewer runtime errors. 🤔 Which one do you prefer? #java #springboot #programming #softwareengineering #softwaredevelopment
To view or add a comment, sign in
-
-
29/30 days ✅ Solved a LeetCode Problem #231 Power of Two — Bit Manipulation Logic in Java Solved the Power of Two problem on LeetCode! The challenge is to determine whether a given integer n is a power of two. The key insight lies in understanding the binary representation of numbers that are powers of two — they contain exactly one set bit (1). So, when we perform the operation n & (n - 1), it turns off the only set bit of n. For any power of two, this result becomes 0. Therefore, the condition n > 0 && (n & (n - 1)) == 0 accurately checks if a number is a power of two. This simple yet powerful bitwise trick is both efficient and elegant — a great reminder of how understanding binary operations can make problem-solving in programming much faster! ⚡ #Java #LeetCode #ProblemSolving #BitManipulation #CodingJourney #LearningEveryday
To view or add a comment, sign in
-
-
#Day-68) LeetCode #3228 – Maximum Number of Operations to Move Ones to the End (Java Edition) Tackled this neat string problem using a greedy approach in Java. The challenge? Move '1's to the end of the string under specific movement rules, maximizing the number of valid operations. 🧠 Core Idea: Track how many '0's we've seen and how many '1's we've already moved. Only move a '1' if there's enough '0's to justify it and the next character is also '1'. 💻 Java Strategy: Loop through the string Use counters to manage '0's and '1's Let me know how you'd tweak this or if you see a more optimal path! #Java #LeetCode #GreedyAlgorithm #StringProblems #DSA #CodingChallenge #LinkedInTech #ProblemSolving
To view or add a comment, sign in
-
-
🚀Day 97/100 #100DaysOfLeetCode 👩💻Problem: Valid Square✅ 💻Language: Java 💡Approach: To check if four given points form a valid square, I calculated all six pairwise distances between the points. 🔹A valid square must have two distinct distances — 4 equal smaller sides and 2 equal longer diagonals. 🔹Used a HashMap to count occurrences of each distance. 🔹If the map has exactly two distinct non-zero distances and the smaller one appears 4 times while the larger appears 2 times, it’s a square! 🧠Key Takeaways: 🔹Strengthened understanding of geometry-based problems. 🔹Reinforced hashing techniques for quick frequency checks. 🔹Improved logic for pairwise comparison and distance calculation. ⚙️Performance: ⏱️Runtime: 2 ms (Beats 27.27%) 💾Memory: 41.91 MB (Beats 22.03%) #100DaysOfLeetCode #Java #CodingChallenge #LeetCode #ProblemSolving #CodingChallenge
To view or add a comment, sign in
-
-
🚀 Day 26 of 100 Days of LeetCode 📘 Problem: Search a 2D Matrix 💻 Language: Java ✅ Status: Accepted — Runtime: ⚡ 0 ms (Beats 100%) Today’s problem focused on searching efficiently within a 2D matrix — a great exercise for understanding nested loops, traversal logic, and time optimization. While this version used a simple brute-force approach, it served as a good refresher on matrix iteration patterns before moving on to more optimized binary search techniques in 2D grids. ✨ Key Learnings: Matrix traversal can be intuitive when visualized 🔢 Always consider both brute-force and optimized approaches — understanding both is key to depth of knowledge Writing clean, readable code matters as much as optimizing it Each problem solved is another small brick in the foundation of strong problem-solving skills 💪 #Day26 #100DaysOfCode #LeetCode #Java #ProblemSolving #DSA #CodingJourney #SoftwareDevelopment #Matrix #KeepLearning #CodeEveryday
To view or add a comment, sign in
-
-
🚀 Stream API Coding – 1: Check if a String is Palindrome Exploring the power of Java 8 Stream API with a simple yet elegant example — checking whether a string is a palindrome using functional style. 💡 String s = "racecar"; boolean isPalindrome = IntStream.range(0, s.length() / 2) .allMatch(i -> s.charAt(i) == s.charAt(s.length() - i - 1)); System.out.println(isPalindrome ? "String is Palindrome" : "String is not palindrome"); ✨ Key Learnings: ✅ Use IntStream.range() for index-based iteration ✅ allMatch() ensures all comparisons pass ✅ Clean and concise approach — no loops, no extra variables 📚 Output: 👉 String is Palindrome This is just the beginning — more Stream API challenges coming soon! 🔥 #Java #StreamAPI #CodingChallenge #JavaDeveloper #FunctionalProgramming #CleanCode #CodingSeries #InterviewPreparation
To view or add a comment, sign in
Explore content categories
- Career
- Productivity
- Finance
- Soft Skills & Emotional Intelligence
- Project Management
- Education
- Technology
- Leadership
- Ecommerce
- User Experience
- Recruitment & HR
- Customer Experience
- Real Estate
- Marketing
- Sales
- Retail & Merchandising
- Science
- Supply Chain Management
- Future Of Work
- Consulting
- Writing
- Economics
- Artificial Intelligence
- Employee Experience
- Workplace Trends
- Fundraising
- Networking
- Corporate Social Responsibility
- Negotiation
- Communication
- Engineering
- Hospitality & Tourism
- Business Strategy
- Change Management
- Organizational Culture
- Design
- Innovation
- Event Planning
- Training & Development