LeetCode

Site

Articles

CLI tool to interact with the site

TODO: add more info

Main factors and tips to use LeetCode effectively 1:

  • Consistency
  • if you’re not focusing, it’s OK to just stop and come back later (active improvement). But don’t forget about consistency.
  • Algorithms this is your “home base”. Sort by difficulty, status, etc.
  • Start from easiest to hardest. You can start skipping questions if you feel like the problems are getting too easy for you.
  • Start with problems that have an editorial already written. These are the ones with a little “document page” icon in the “Solution” column of the problem set.
  • Start with problems that have good reviews. I’d initially stay away from problems that have a worse than 2:1 ratio of upvotes to downvotes, and problems that have 4:1 or above are usually of fairly high quality.
  • Eventually, you’re going to find a problem that’s too hard, and you’ll get stuck. That’s totally fine. In fact, it’s absolutely fine (and perhaps even efficient) to give up on some problems. It’s possible that it requires an algorithm or data structure that you haven’t seen before, and there’s no need for you to pull your hair out trying to re-discover an algorithm or data structure. Check editorial, discussion and some resources to deeper understand this problem, this can help you to unstuck.
  • I also strongly recommend “Cracking the Coding Interview”. Many of those problems are also available on LeetCode (see this list), so you can actually use LeetCode as a complementary tool alongside the book. I would consider the book to be fairly entry-level, so if you’re new to technical interviews, I’d recommend starting by going through the book, even before doing LeetCode full-time.

Alternatives

References

Footnotes

  1. How to use LeetCode to help yourself efficiently and effectively (for beginners))