How to study and improve for LC hard and topics like Dynamic Programming, Optimization Problems etc for interviews?
What do you suggest I do to improve on topics that are generally considered hard? Does pure brute effort of repetitive practice work? Are there resources I can look at?
My friend was asked and came up with a substring matching algo in an onsite, hes at 3 times my TC. At my last Amazon onsite I was asked a Range Minimum Query with LCA(DP) which is a fairly difficult problem to come up with if you haven't studied it before.
I generally have cold feet when trying LC hard problems. To be brutally honest, I dont think I have ever solved a hard problem fully on my own without taking a hint or a peek at a solution. This gets me really frustrated and on the verge of giving up (incidentally another post today talks of giving up and accepting your lower than mediocre job as the cieling and thats exactly how i feel at my incompetence)
Any help is greatly appreciated.
TC 80k
comments
https://www.cs.cmu.edu/~ckingsf/bioinfo-lectures/dynamicp.pdf
http://web.mit.edu/15.053/www/AMP-Chapter-11.pdf
https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-design-and-analysis-of-algorithms-spring-2015/assignments/
https://mcdtu.files.wordpress.com/2017/03/introduction-to-algorithms-3rd-edition-sep-2010.pdf
Actually looking at a lot of solutions and hoping to see them again can be a smaller win for a single job search, and I bet it helps some people in a pinch, especially if they are mostly ready anyway, but the biggest gains come from real understanding.
Mind if I PM you?