3 ms·
I'd like to know how this is 'cheating'. The questions are quite simply memorization problems as the difficulty increases especially. You don't have to disclose
by deft 10y ago
I'd like to know how this is 'cheating'. The questions are quite simply memorization problems as the difficulty increases especially. You don't have to disclose you've seen a problem before. These types of interview questions are already terrible, and now you are expecting interviewees to intentionally make it harder for themselves.
I don't get this anti-worker attitude. However I'm not surprised to see it on HN
- deleted 10y ago[deleted]
- cousin_it 10y agoAlgorithm problems are supposed to be solved by thinking, not memorization.
- ball_of_lint 10y agoThat's just plain wrong. What happens if you need for example ukonnens algorithm for creating a suffix tree? Good luck deriving that on your own. Similarly Fourier transforms. Memorizing what algorithms do and what types of problems they can solve is essential to being a programmer, and besides that it's simply faster.
- cousin_it 10y agoI agree that memorizing algorithms is useful. That said, Google interview questions are usually much easier than deriving Ukkonen's algorithm or FFT on your own. They are more like "given a rotated sorted array, find a given value quickly". Well, a bit harder than that, but solvable in 40 min.
- grey-area 10y agoThat's the theory. In practice recent prior exposure to the problem and possible solutions makes answering such a question far easier, so the most prepared for the questions wins. They don't test thinking, they test preparation.
- vog 10y agoNot only that, but some worker may be well prepared without even noticing. And without any bad intentions to trick you. This happened to myself (although in a non-interview situation): In general, if you have solved many problems and looked at many solutions, you simply won't remember each specific problem. This effect may start as early as your first math olympiad, and will only get worse on university while you study math and/or computer science. Some time ago I solved a math puzzle, where I got the right ideas relatively quickly, even though I was convinced this problem was new to me. Later I found out in my writings that I actually solved exactly that problem some years ago. Even though I was unable to remember the exact solution, not even remembered I've seen it before, I seem to have internalized enough clues so I could rediscover the exact solution whenever I need it.
- Sherxon 10y agoYou are right, thinking logically is always better option than memorizing solutions. To have a good thinking ability, one needs practice. Solving many problems leads you to think different approaches, compute running time and space complexity of your solution before writing code to any problem. I think, this is one of the best ways to improve "thinking".