#Do it again

1 messages · Page 1 of 1 (latest)

fresh lantern
#

nothing else?

fresh ether
#

You've got diminishing returns with solving anything else IMO. I'd make sure you really understand the intuitions behind the 150 before moving on.

tiny knot
#

maybe Grind 169 list? but +1 to resolving(maybe random problems from NC 150)

fresh lantern
#

makes sense, and then just tagged for interviews?

shrewd halo
#

This advice sounds horrible without additional clarification. Instead of doing it again, why not get into the open land of leetcode. There are so many good problems to solve, not restricted to just NC 150. I don't think 150 problems can do jack shit for you except build up some knowledge storage. Now, perhaps, focus on a single topic and do problems you've never seen before to get better at problem solving. Make sure to get out of your comfort zone and solve relatively harder problems.

fresh ether
#

Provocative language aside, that's also not bad advice. Just be warned that while there are a lot of good problems on leetcode, there are also a lot of bad ones - ones that require special knowledge or a "trick" of sorts to solve them. These can be fun to solve but if you're just trying to get good enough to interview, then these ones are more or less a waste of time.

There are really only 12ish patterns of problems you'll see besides any that you wouldn't be able to prepare for anyway. Get really good at those. A common metric is to ensure you can solve a LC medium in 20 minutes. Frankly speaking, the number of problems you've solved doesn't really matter. Some information online suggests 200-300 problems to be the sweet spot. But there doesn't appear to be a single reliable study (that I can find).

Anyway, do what you think you need to in order to feel comfortable with the interview and don't let the opinion of strangers on the internet influence you (especially mine).

zenith vine
#

I would suggest if you have an interview lined up start going through the company tagged most frequent questions to get an understanding of what's popular atm (always subject to change), it also depends on what kind of prep time you have

barren idol
#

if you are just triyng to improve problem solving ability in general AKA no hard deadline (rather than preparing for a specific upcoming interview), I would personally either start looking for other sets to start working on or just do random problems. I think there's little to be gained from resolving problems that you already know the solution to, and you'll be able to differentiate useful and useless problems eventually. You can also do contests to start getting a backlog of problems you can go through during training.

fwiw When I was practicing I never resolved problems, and would also skip problems I immediately knew the solution to.

#

Ideally for maximum growth you should be solving problesm that you find very challenging, but doable

#

also, on the topic of one-off tricks: one-off tricks are usually specific instances of wider and more abstract ideas in computer science and mathematics

#

they feel random because you haven't gone through enough problems yet to see how those ideas can generalize in different instances

#

so a trick that feels one-off doesn't mean that a problem is bad (though if bad = not useful for interview prep that is probably true)

barren idol
#

evan đŸ˜»

barren idol
hushed wedge
#

Why are we acting like there is 1 way?

#

Everyone solves them differently, some people are “good” at leetcode but write their solutions like dog programmers and will never pass an interview with their solutions even though they understand

#

There are a lot of things to consider, if you want to get good at leetcode and proficiently explain your solutions to an interviewer then doing problems solely might not be best

#

If you just want to be a competitive programmer and most likely write solutions that are basically unreadable just spam problems or go that route

hushed wedge
barren idol
# hushed wedge Why are we acting like there is 1 way?

I am approaching this purely from a problem solving aspect, and also from the perspective of someone who has the time to work on these skills rather than cram for an upcoming interview. If you dont have the time then there are other ways

#

There is no reason to not also work on communication, mock interviews, etc. Outside of pracrice if you feel that you are performing poorly

barren idol
#

Ive done decently well in my interviews. Its taken me practice with communication, behaviourals, and effort. But its also different from what other people have said.

shrewd halo
#

and you're speaking as if you know cp'ers well

#

lol

#

We're not acting like there is 1 way, we're talking from our own experience. Since @barren idol and I have more experience in problem solving, I think we have better say in this but purely in terms of problem solving. Plasmatic mentioned before hand that he's just talking about how to "improve problem solving ability"

#

I also said "it sounds horrible" but on the base of no additional clarification

#

We didn't refute anyone's advice

hushed wedge
#

Don’t take offense, it’s true I don’t know the deepness of competitive but looking at some of the solutions people write and yours and even mine included, are written poorly for an interview or job.

I agree with the do 150 again because to improve at writing you need less variables, do the same thing over and over, you will improve on writing it more efficiently (ideally).

Also the 150 are not just random 150 problems they all were selected for a purpose in mind, maybe you might get fucked in an interview with a new concept entirely but no list is completely interview prep ready so to speak.

This is with the objective to get a job and successfully pass interviews, consistently, not to be good at leetcode just to be good at leetcode and spit out working solutions without explanation or code quality

#

There are definitely other ways as well, but this is my approach as well, applied to leetcode and out

shrewd halo
#

There's no offense taken. But make sure you know that there's a difference between writing code for ourselves and writing codes during the interview/job. Most cp'ers are capable of writing industrial style codes during interview but when practicing, it's about getting the idea out asap.

#

Also there are reasons to why I'm against doing NC 150 "again". If you read my previous statement, I talked about how NC 150 builds up knowledge storage but it doesn't necessarily strengthen it. Refraining yourself from practicing other problems after you have a base understanding of such topics will make your mindset be restrict to what those problems provide. For each topics/dsa there are many variations of how those can be perceived. I'm not saying NC 150 is bad, I'm saying that there's no point of doing those problems again when you can be open to more of other problems and that's how you can improve

hushed wedge
#

I would agree with that if there was exactly 1 solution possible for each of those problems, but there are like N ways to solve a problem, I believe if you diligently take your time trying various solutions to the same problem you will learn a lot. For example, if asked someone palindrome, we could just introduce 2 pointer, now on the next revisit or run, you can try hashmap, then can do recursion, etc
it may be overkill/cancerous to use the other ds but for me it helps to understand something deeply and try it again a different way

#

Instead of moving from problem to problem but to each their own, like I said, this would be my way but everyone is different in their practice or approach

dark cedar
#

I'll have to agree with @shrewd halo here
You have the perception of competitive programmers writing "bad code" but they're opting for speed over readability because they're the only one reading it. The intuition to solving a problem is still theirs and nothing is stopping them from naming variables properly and writing much more readable code during an interview.

Saying that doing more problems have diminishing returns and instead just redo the same 150 problems is one of the worst advice I've seen someone give. You're training to problem solve, not memorize tricks you've seen already. You do more problems so you get the intuition for such tricks that when a similar one comes up, you can find it yourself. If you find leetcode problems too easy, go codeforces and start doing problems there. And if you think that those aren't interview problems and thus won't help, I hope I don't have to explain why that's incredibly ignorant.

dark cedar
# hushed wedge I would agree with that if there was exactly 1 solution possible for each of tho...

You're not finding N solutions in an interview, you can mention it for sure but they want one with optimal time complexity and that's it. I don't see the value of redoing the same problem with another data structure because you've already observed how to solve the problem. If you can't implement it with something else, that means either you're not familiar with that data structure enough or you're memorizing the solution

hushed wedge
hushed wedge
#

but derive different solutions and conclusions/intuitions

dark cedar
#

It's the correct way if you want to do the bare minimum to pass interviews so I guess there's that. You're solving multiple ways because the leetcode editorial does that, why don't you just attempt a different question that requires that said data structure?

fresh ether
#

Just to clarify because it obviously wasn't clear, the goal in suggesting this was not to say "just repeat the problems" but rather "make sure you understand the intuition behind the 150 before moving on". I said it above but I understand why it would have gotten lost in all the fuss. FWIW, I think everyone's arguments here have merit. As they do. I made a quick statement assuming the context and I can admit when I'm wrong. I should have clarified the context before making the statement. EVERYONE JUST DO WHAT YOU WANT TO DO

dark cedar
#

Well I agree with that, you shouldn't be moving on without actually understanding

dark cedar
fresh ether
barren idol