Hi, I am Mansi Agarwal, a content writer at Favtutor. I have recently completed the 1000 problems milestone on Leetcode. So, I thought, let’s share my journey with you.
I often wonder about the green color and the numerous badges people used to have on their profiles, and now I have them too.
This is how my leetcode profile looks now.
But, If you check my profile for 2022, you will find almost nothing.
You can see a lot has changed!
Here are some lessons I’ve learned from LeetCode and mistakes you should avoid to save time and effort.
How I Reached the Milestone of 1000+ Questions?
Solving over 1000 questions is not an easy task. You may start to feel bored after some time and begin exploring new fields. However, reaching your goal requires time and effort.
I began coding in my first year. During that time, my friends were making streaks on Snapchat. It was then that I got the idea to build a streak on Codeforces and later on Leetcode. This streak helps me to maintain consistency and commitment with a simple number.
- Dive into Topics: While I was learning a new topic, I used to do 3 to 4 questions on that topic daily. This helps me to get a good grasp on that topic. Even after my solution worked, I used to see other approaches too. This helps me to know about the most optimal solutions.
- Daily Goal Sheets: During my placement, I used to create daily plans. They helped me manage my time effectively. It would be beneficial if you begin these daily plans early. Not only do they assist in time management, but they also enable you to track your daily performance.
This is how I used to make plans: After some time, I would write them on Google Docs, which helped me analyze my monthly progress as well. Oh, and before you judge, just know that my handwriting skills are… well, let’s just say it’s a work in progress. 😊
- Review Tricky Questions: I used to spend 2-3 hours on certain questions that remained unsolved. Eventually, I would have to look at the solution. Then, I discovered a technique: if I couldn’t figure out a problem on my own within 30 minutes, I would refer to the solution. I would add these questions to a list and review them every morning. This practice has been immensely beneficial in my coding journey.
- Stick with What Works: I used to switch between different coding websites a lot before. It was not good because I ended up doing the same questions on three different sites. This didn’t help me learn anything new. So, it’s better to find one platform you like and stick with it. If you’re getting ready for interviews, Leetcode is a good choice.
The Learning Mistakes I’ve Made
- Don’t Get Stuck on the Same Problem: One of my biggest mistakes is spending too much time on the same problem. If you are stuck for 15-20 minutes, check out a hint. If you’re still stuck after 50-60 minutes, look at the solution in the discussion section.
- Consider all approaches: Previously, I only focused on solving as many questions as possible. However, interviewers may ask about various methods, ranging from Brute Force to Optimal. Therefore, always examine all approaches after solving a question.
- Don’t Skip Contests: Once you have a good understanding of any programming language, begin participating in weekly and bi-weekly contests. This practice helps you analyze your progress. Also, remember not to copy code from others to boost your rating. While it may increase your rating, it does not enhance your knowledge.
- Avoid Practicing Similar Questions: This mistake is a common one! I used to tackle tons of easy questions first. Easy ones help to clear your basics but take your time. Once you nail the easy ones, level up to medium difficulty, and if you can handle the hard ones, move to the next topic. Remember: Quality > Quantity!
Essential Tools That Elevated My Learning Journey
- Leetcode Big Omega: This is a Google Chrome extension that displays the company’s tag. When I was preparing for a specific company, it enabled me to solve their questions. This extension significantly aided me during my preparation.
- Screen Timer: I used to set a timer on my phone, especially for the app I used a lot. It would automatically shut down the app once I went over my daily limit. It saved me a lot of time.
- Leetcode Timer: I used this Chrome extension to track how much time I spend on questions. It allows me to set time limits for easy, medium, and hard questions and gives me alerts if I exceed them. It helps me manage my time better.
Conclusion
Solving 1000 LeetCode problems is not important; solving questions in minimum time is important. In the coding round, you only have 1.5 hours to solve 3 questions. Try to avoid the mistakes I made and keep exploring the LeetCode Discuss, where you will find lots of helpful information.