I see this come up all the time. "I have on-site with X in a week, should I be practicing E, M, or H questions on leetcode?" First of all, if you're starting prep a week before, you're not serious about interview prep anyway. But to everyone else... Ffs, the answer is ALWAYS "just do a bunch at every difficulty level until you're comfortable". Seriously, why would you shy away from hard questions just because someone said "do medium"? Do you not realize that every interview is different? Your goal should just be to get comfortable (read: highly confident) at coding in an interview setting. Your basic methodology on the whiteboard or in the textbox should be something that works for you. Your approach to problem solving should be something that works for you. You should be able to talk while working out a problem and while coding. When you ask if you should be doing the hard ones, you sound like a dumbass. "But what if I end up with an easy interview and become better at coding and problem solving for nothing?"
Why do you care so much about what other people do in their interview prep?
It was discussed million of times. Leetcode is not about becoming better in coding, it’s about getting through interviews. So returning to your rant. On average one spends more time on solving hard problems than medium/easy ones. So considering that hard problems are rarely asked if you’re not new grad, to be more effective and solve more problems it’s better to do medium, easy and ONLY top hard ones.
If you take a week to practice, and you solve either 10 hard problems that week, or 15 medium, it doesn't really change anything. You've spent that week practicing and getting better at interviewing. Do whatever is just challenging enough to stretch you, and forget about the rating and count.
But if you had to pick just one, would it be easy, medium, or hard?
Just kidding. But this is a ridiculously long post for something that shouldn’t be a real issue for anyone.
Yeah. Let’s settle this for once. Easy, Medium, or Hard?